home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / answers / comp / ibm-rt-faq / aix-v2 / part2 < prev    next >
Internet Message Format  |  1994-03-02  |  128KB

  1. Path: bloom-beacon.mit.edu!hookup!swrinde!menudo.uh.edu!lobster!antimatr!faq-rt
  2. From: faq-rt@antimatr.hou.tx.us (Mark Whetzel)
  3. Newsgroups: comp.sys.ibm.pc.rt,comp.unix.aix,comp.answers,news.answers
  4. Subject: COMP.SYS.IBM.PC.RT: - AIX V2 - Part 2 of 4 - Frequently Asked Questions
  5. Summary: This posting contains part 2 of 4 of Frequently Asked Questions 
  6.          (and their answers) and general information, hints and tips
  7.          for using AIX V2.2.x on IBM RT (615x) computers.
  8. Keywords: IBM RT PC software FAQ 6150 6151 6152 AIX VRM AOS MACH PICK
  9. Message-ID: <ibmrt_aixv2p2_762606210@antimatr.hou.tx.us>
  10. Date: 2 Mar 94 11:03:49 GMT
  11. Expires: 15 Apr 94 11:03:30 GMT
  12. References: <ibmrt_aixv2p1_762606210@antimatr.hou.tx.us>
  13. Sender: markw@antimatr.hou.tx.us
  14. Reply-To: aix-rt@antimatr.hou.tx.us
  15. Followup-To: comp.sys.ibm.pc.rt
  16. Lines: 2887
  17. Approved: news-answers-request@MIT.Edu
  18. Supersedes: <ibmrt_aixv2p2_762525136@antimatr.hou.tx.us>
  19. Xref: bloom-beacon.mit.edu comp.sys.ibm.pc.rt:1428 comp.unix.aix:21320 comp.answers:3991 news.answers:15928
  20.  
  21. Archive-name: ibm-rt-faq/aix-v2/part2
  22. Last-modified: Tue Mar  1 06:19:18 CST 1994
  23. Version: 1.0
  24.  
  25. Frequently Asked Questions for:  AIX V2.2.1 on IBM RT systems.
  26.                                  Part 2 of 4 parts.
  27.                                  System Software topics for AIX/RT.
  28.  
  29. See part 1 for a complete index of the AIX FAQ postings.
  30.  
  31. ================================================================================
  32.  
  33. ------------------------------
  34. 2.0   Software questions.
  35.  
  36. S.1 - What is AIX?
  37.  
  38.       The operating system is called AIX, for Advanced Interactve
  39.       Executive, and is based on the UNIX system V operating system. 
  40.       During AIX development, enhancements were added by IBM and by
  41.       INTERACTIVE System Corporation under contract to IBM.  These 
  42.       enhancements were made to improve the AIX Operating System's
  43.       functions and ease-of-use, merge in selected facilities of BSD
  44.       4.2, (and later some BSD 4.3), and to take advantage of the RT PC
  45.       technology.
  46.  
  47.       The enhancements consist of functions exclusive to IBM and the
  48.       RT PC, along with functions from several versions of UNIX, including
  49.       BSD and Interactive Systems. For example, the AIX Operating System 
  50.       includes a C compiler, Asynchronous Terminal Emulation, and the
  51.       INed full-screen editor.
  52.  
  53.       AIX for the IBM RT 6150 and 6151 machines has been discontinued by IBM.
  54.       Formal support of AIX V2 by IBM ended on June 1, 1991.  Sales of
  55.       6150 and 6151 machines also ended on that date, replaced by the
  56.       IBM Risc/System 6000 line of workstations.
  57.  
  58.       Features of the AIX/RT operating system:
  59.     * Editors: vi, ed, INed.
  60.     * Shells: 
  61.       - Enhanced Bourne shell
  62.       - C shell
  63.       - DOS services, a shell allowing users to use IBM PC DOS-like
  64.             commands accessing both AIX and DOS files.
  65.     * Library routines:
  66.       - Expanded curses library.
  67.       - Expanded terminfo library.
  68.       - Routines for DOS services.
  69.       - Shared libraries, allowing run-time linking of user-written
  70.         routines.
  71.     * Kernel:
  72.       - Extended inter-process communication
  73.         (semaphores, messages, shared memory)
  74.       - Enhanced signals.
  75.       - Multiple concurrent group access.
  76.       - Filesystem enhancements such as file syncronization and trunication.
  77.       - Enhanced process managment to explot the 40-bit address space.
  78.       - Page fault handling on demand.
  79.       - Fork enhancement.
  80.       - Memory mapped files.
  81.     * International Character Support.
  82.     * Graphics
  83.       - Grapics Development toolkit.
  84.       - Advanced Display Graphics support library.
  85.     * User interface
  86.       - Enhanced instllation, device configuration, and system 
  87.         customization.
  88.       - Useibility Services, a point-and-select interface to AIX commands.
  89.     * Optimizing C Compiler.
  90.     * Other functinal enhancements:
  91.       - Generalized queueing system for job and print queue managment.
  92.       - File system extensions for minidisk devices.
  93.       - I/O managment extensions including:
  94.         - Dynamiclly configured device drivers.
  95.         - Support for virtual terminals and SNA sessions.
  96.         - Generic device independent device drivers.
  97.       - Multiple virtual termainal support on the native consoles.
  98.       - Support for logical disks (minidisks)
  99.       - Error log collection and analysis, trace recording and 
  100.         dump facilities.
  101.  
  102.     Portions of the above were quoted from IBM RT Personal Computer
  103.     General Information book, Second Edition (July 1987) GC23-0783-1.
  104.    
  105. ------------------------------
  106. S.2 - What is VRM?
  107.  
  108.       Unlike many operating systems derived from UNIX, AIX V2 is divided
  109.       into two layers: the kernel, and the Virtual Resource Manager (VRM).
  110.       The kernel is the core of the operating system; it implements the AIX
  111.       file system, user process management, system call interface, and other
  112.       UNIX-like features.  The VRM provides a virtual machine envionment for
  113.       the kernel, shielding it from specific hardware characteristics and
  114.       from changes or additions to the hardware.  The VRM also allows more
  115.       than one operating system (and their applications) to execute.  To a
  116.       guest operating system, the VRM is percieved as hardware.  The interface
  117.       between the VRM and the AIX kernel is known as the Virtual Machine
  118.       Interface (VMI).
  119.  
  120.       VRM is conceptually similar to the control program for the IBM
  121.       Virtual Machine/System Product on machines with an IBM System/370
  122.       architecture, except that while the VM/370 control program emulates
  123.       the System/370 hardware architecture, the VRM emualtes a hypothetical
  124.       machine with powerful features that are not usually implemented in
  125.       hardware.  VRM however, lacks major features of an operating system,
  126.       such as a file system and a user interface; these services are provided
  127.       by the AIX kernel.  The VRM processes, device drivers and runtime
  128.       routines extend and control hardware functions for guest operating
  129.       systems. 
  130.  
  131.        - Portions of the above were quoted from IBM RT Personal Computer
  132.          General Information book, Second Edition (July 1987) GC23-0783-1.
  133.  
  134.       VRM it seems, was not written in standard C.  Some books seem to 
  135.       indicate that it is written in PL8. Possibly a derivation of PL/1
  136.       or an IBM internal language called PL/S. Portions of the MVS
  137.       operating system are written in PL/S.  I don't have good conformation
  138.       of the exact details of VRM, nor good documentation of some of
  139.       the interfaces, other than in the VRM Device Support and VRM Programming
  140.       reference manuals. 
  141.     
  142.       [Anybody know more details of VRM?  How it came about?  Design? - MW]
  143.  
  144. ------------------------------
  145. S.3 - The RT will not boot from floppy, but does boot from the internal
  146.       hard disks, why? Also VRM unique keyboard sequences.
  147.  
  148.       As shipped by IBM, the only diskettes that are bootable are:
  149.     - Diagnostic diskette #1
  150.     - VRM Install diskette #1
  151.     - Any VRM backup diskettes made with the 'cvid' command, has
  152.           diskette #1 as a bootable floppy.
  153.  
  154.       The AIX Install/maintence diskette while it appears bootable is in
  155.       fact not directly bootable.  VRM is the OS that actually owns the
  156.       machine during normal operation when using AIX, and when 'booting' 
  157.       the AIX Install/Maintence diskette, you are still booting VRM from
  158.       the internal hard disks. VRM examines the floppy drive to determine
  159.       if a runable guest system image and boot record is on the diskette
  160.       in the drive.  The AIX Install/maintence diskette has very special
  161.       version of the AIX kernel on it, and THAT is being loaded from the
  162.       floppy.  This special AIX diskette includes a kernel built that
  163.       requires no external hard disks (except that containing VRM), and
  164.       places all of it's filesystems in RAM with a special device driver
  165.       in this kernel on diskette that allows ram simulation of disk
  166.       filesystems.
  167.  
  168.       Sometimes, either by accident, or overt action, the Non-Volitale
  169.       Random Access Memory (NVRAM) has been altered to not allow the floppy 
  170.       drive to be used as a boot device. 
  171.  
  172.       The NVRAM, in the RT planar, maintains, along with the time of day 
  173.       clock setting, various system parameters, AND a list of last and 
  174.       currently selected boot devices.  This list may be updated at any
  175.       time by some special key sequences entered ONLY from the native
  176.       keyboard.  The VRM software that controls the RT hardware silently 
  177.       accepts these special keystroke patterns and may update NVRAM or alter
  178.       system operation.  The NVRAM contents and clock are maintained while
  179.       the system is powered off by the battery attached to the operator key
  180.       panel.
  181.  
  182.       By referencing the chart below, you can reset the available boot device
  183.       list from one of the hard drives back to the floppy drive. These keyboard
  184.       sequences are directly captured as long as VRM running.  You do NOT
  185.       have to be logged in to AIX to change the settings. VRM will silently
  186.       update the NVRAM as specified by the chart below.
  187.  
  188.     Key-Sequence        Function
  189.         --------------------------------------------------------------------
  190.     Alt-Action        Change active display screen to
  191.                    next virtual terminal (if any).
  192.     cntl-Action        Change active display to command
  193.                    virtual terminal (if defined).
  194.     Shift-Action        Change active display screen to
  195.                    previous virtual terminal (if any).
  196.     Cntl-Alt-a        Select diskette 0 as alternate IPL device.
  197.     Cntl-Alt-b        Select diskette 1 as alternate IPL device.
  198.     Cntl-Alt-c        Select fixed disk 0 as alternate IPL device.
  199.     Cntl-Alt-d        Select fixed disk 1 as alternate IPL device.
  200.     Cntl-Alt-e        Select fixed disk 2 as alternate IPL device.
  201.     Cntl-Alt-Delete        Restart the co-processor.
  202.     Cntl-Alt-Action        Exit the co-processor.
  203.     Cntl-Alt-Home        Restart a virtual machine
  204.     Cntl-Alt-End        Dump first virtual machine data.
  205.     Cntl-Alt-NumPad 4    Activate the VRM debugger.
  206.     Cntl-Alt-NumPad 7    Dump all of memory to diskette.
  207.     Cntl-Alt-NumPad 8    Dump VRM data to diskette.
  208.     Cntl-Alt-NumPad 6    Hard IPL the entire system.
  209.     Cntl-Alt-Pause        Soft IPL the entire system.
  210.     
  211.    ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==
  212.    Submitter: James Moody  <moody@austin.ibm.com>
  213.    Date: 13 Mar 90 17:59:30 GMT
  214.  
  215.    Your machine is experiecing the "can't boot from diskette" bug.
  216.  
  217.    The first thing to try is this:
  218.    Boot the machine.  Hit the key sequence ctl-alt-a (all 3 keys at once).
  219.    [ BTW.. this is the LEFT alt key - MW ]
  220.  
  221.    Shutdown and try booting from diskette.
  222.  
  223.    If that doesn't work, here is the failsafe approach.  Boot the machine. 
  224.    Hit ctl-alt-numpad4 (only works if you have some display connected to the
  225.    RT that is NOT the megapel).
  226.    [ VRM debugger wont work on the megapel -MW ] 
  227.  
  228.    You are now in the VRM debugger.  At the prompt, do the
  229.    following:
  230.  
  231.    >al F0008828 F0 [enter]
  232.    >g [enter]
  233.  
  234.    You should be back in AIX now.  Shutdown and reboot from diskette.
  235.  
  236.    If that fails (because I said something wrong here or you don't understand
  237.    what I'm talking about), power off the machine and take of the front cover.
  238.    Disconnect the battery back.  Leave disconnected for 5 minutes or so and then
  239.    reconnect.  I think this is messy but it also works.
  240.    [ Note: You will also have to reset the TOD clock. It will now be
  241.      January 1, 1970 and on Eastern Standard time.  I recommend you attempt
  242.      first booting the VRM disk and use the menu items to correct the
  243.      system clock before doing a normal boot of the installed AIX. - MW ]
  244.  
  245.    ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==
  246.    Submitter: Nick Simicich 
  247.    Date: 13 Mar 90 02:09:19 GMT
  248.  
  249.    Power off the system, open the covers, and disconnect the battery.
  250.    Let it stay disconnected for about 15 minutes with the power off.
  251.    Reconnect the battery and power up the machine.  It should boot from
  252.    the floppy.  Replacing the motherboard works, too. :-)
  253.  
  254.    While you're in the system, make sure that the floppy drive is
  255.    connected to the controller, and that all of the connections are good.
  256.    Wiggle them a bit.
  257.  
  258.    The RT thinks you've told it not to boot from the floppy with a
  259.    keyboard sequence.  Or, the floppy is broken.  If the battery trick
  260.    doesn't work, call your CE.)
  261.  
  262.    [ See the above note about the clock! - MW ]
  263.    ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==
  264.  
  265. ------------------------------
  266. S.4   What operating systems are available for the RT?
  267.  
  268.       At the time of this posting, the following operating systems 
  269.       have been available for the RT processor.  Availablility of these
  270.       systems is unknown and unfortunately problematic.
  271.  
  272.     [ This section needs LOTS of work! - MW ]
  273.  
  274.      AIX V2 -  Advanced Interactive Executive
  275.        Vendor:  International Business Machines
  276.            Systems: IBM PC RT 6150 and 6151
  277.            Announced: Jan 1, 1986 (AIX V1.0)
  278.        Available: Not generally, discontinued on June 1, 1991.
  279.        Last Version: V2.2.1  Update level 1779 (opsys).
  280.        Distribution: Binary format only, on installp disks.
  281.              See section S.5 below.
  282.        Information source: IBM announcement letters 286-004,
  283.          286-011 and 286-259
  284.        Note: Other versions of AIX exist for other platforms:
  285.         AIX V1.3 - IBM PS/2 and compatible 80386 processors.
  286.         AIX/ESA  - IBM 3090 mainframes
  287.         AIX V3.2 - IBM Risc/System 6000 processors.
  288.  
  289.     AOS    -  Academic Operating System
  290.        Vendor:  IBM
  291.        Available: Not generally.  Originally from IBM, but most academic
  292.                       instutions that have RT systems and Berkley source
  293.                       liscenses were able to get the full source.
  294.        Last Version: AOS43 Dec88 ?
  295.        Distribution: Source
  296.        Information: IBM Announcement letter xxx-xxx,
  297.                         RPQ P83008 Program Number 5799-WZQ
  298.                         and usenet news information.
  299.  
  300.     BSD/RENO  - ?
  301.        Vendor:  Berkley?
  302.        Available: Unknown.  This version is a combination of the AOS
  303.               drivers and low level support routines, with the
  304.               RENO distribution of BSD.  Never made generally
  305.               available.  Found at academic instutions that have
  306.               access to both AOS and RENO sources.
  307.        Version: Reno?
  308.        Distribution: Source?
  309.        Information source: Netnews discussions.
  310.     
  311.         MACH   - ?
  312.        Vendor: Mt. Xinu ?
  313.        Available: ?
  314.        Version: msd 2.6 ?
  315.        Distribution: ?
  316.        Information source: Gleaned from Netnews posting May 21, 1991
  317.     
  318.         PICK   - (Named after author Dick Pick, of PICK Systems, Inc.)
  319.        Licensee: Seattle OS, Inc., PICK Systems, Inc. Major shareholder.
  320.            Systems: IBM Series/1 and IBM PC RT
  321.            Completed: 1982 and 1987, respectively
  322.            Processor: IBM series/1 and PC RT
  323.        Available: Unknown
  324.        Version: ?
  325.        Distribution: Unknown, Binary system images?
  326.            Information source: Exploring the PICK Operating System
  327.         By Jonathan E. Sisk and Steve VanArsdale
  328.         Hayden Books, Second Edition 1989
  329.         ISBN 0-672-48412-9
  330.        Note: PICK is available for a variety of processor hardware and
  331.                  platforms including, but not limited to:
  332.          IBM PC/XT/AT/RT/Series-1 and IBM 4331/4361/303x/9370 (PICK/370),
  333.          Intel 8086/80286/80385, Motorola MC68000/68020 (several vendors),
  334.              Zilog Z8000 (ADDS Mentor), HP 3000, Microdata, Nixdorf 8890 VM.
  335.  
  336. ------------------------------
  337. S.5   Where can I get a copy of AIX for the RT?
  338.  
  339.       At this time, IBM no longer directly sells AIX V2. 
  340.  
  341.       However, some IBM remarketers MAY still have original distribution
  342.       sets still in inventory.  (doubtful!)
  343.  
  344.       If you aquire an RT system, inquire about the software and books for
  345.       the system.  This is the only way you can currently get a liscensed
  346.       copy of AIX, that I know of.  Most liscensed software that IBM
  347.       distributed for the RT is no longer carried by IBM. 
  348.       Some OEM vendors of software may still stock and sell their products
  349.       that were made for the RT, but there is no list of available software
  350.       that I am aware of.
  351.  
  352.     [ I'm going to maintain a seperate section for this!
  353.       See section S.21 for OEM software. - MW ]
  354.  
  355. ------------------------------
  356. S.6   Where are the 'man' pages?
  357.  
  358.       IBM never supplied the 'man' command and the source for the man
  359.       pages directly WITH the AIX distribution.  
  360.  
  361.       They WERE available as a seperate PRPQ (Program Request Price Quote)
  362.       software product, for purchase for a small fee mostly covering the
  363.       distribution and media.  The set of nroff files on two hi-density
  364.       diskettes, covered most of the base commands, some system files and
  365.       common special files.  Sadly missing were the TCP/IP command set and
  366.       information dealing with quite a few of the TCP and NFS daemons.
  367.  
  368.       RPQ: P91026  Program number: 5799-DAQ    AIX/RT on line pubs 
  369.  
  370. ------------------------------
  371. S.7   Contents of the AIX V2.2.1 distribution diskettes.
  372.  
  373.       Shown in this list is the number of disks comprising a full
  374.       distrubution set of AIX V2.2.1.  In parenthesis is the product
  375.       abbreviation directory name, as seen in the /usr/lpp file tree.
  376.       A few example commands and files are listed, plus a comment by
  377.       myself (indicated by '>') on files and programs that seem badly
  378.       placed in the distribution, or missing.
  379.  
  380.       There are 36 total 1.2Mb format diskettes shipped for AIX 2.2.1.
  381.       # column indicates number of disks in that option group.
  382.  
  383.     #   Title and contents
  384.     -   -------------------------------
  385.     2   VRM install/utility disks
  386.             * VRM install program, utility programs for formatting disks,
  387.               and other special functions.
  388.  
  389.     1   Installation/Maintenance
  390.             * AIX Mini-kernel, install facilities, standalone backup 
  391.               programs, minidisk utilities, and more.
  392.  
  393.     8   Base System Program (opsys)
  394.         * base system files, including:
  395.           - shells: sh, csh, tsh, Rsh. [ tsh = trusted bourne shell ]
  396.           - C compiler, cpp, ld, make, ar, nm.
  397.           - cpio, backup, restore.
  398.           - initial /usr, /etc, /bin, /dev population.    
  399.           - awk, sed.
  400.           - dosdir, dosread, doswrite, dosdel.
  401.  
  402.     6   Extended Services Program  (osplus)
  403.         * Administrative support (admn)
  404.           - tar, prof, tic, terminfo support, ect.. 
  405.           > badly placed: tar, tic, chroot, proto, prof,
  406.             and the /usr/lib/terminfo/* files.
  407.         * DOS services (doss)
  408.           - special commands to emulate a dos envrionment from the
  409.         unix command line.  With the command 'dos',
  410.          a special version of format, dir, mkdir, ect..
  411.           - dos to unix conversion utilities. convert, filetype, ect..
  412.         * Extended Programming Support (extp)
  413.           - adb, cflow, cxref, dbx, dump, lex, yacc, ect..
  414.           > badly placed: banner, bc, cal, calendar, dc, tput, tail.
  415.         * Source Code Control System (sccs)
  416.           - sccs support functions.
  417.           > missing the 'sccs' command shell.
  418.         * Text processing/typesetting functions. (text)
  419.           - nroff, troff, spell
  420.         * UUCP support (bnuu)
  421.           - uucp, uucico, cu, ct, ect..
  422.         * vi editor (vied)
  423.           - vi, ctags, edit, expreserve, exrecover.
  424.         * Games (game)
  425.           - usual character based simple games, including 'fortune'.
  426.         * Sendmail (send)
  427.           - sendmail binary, mailstats, ect..
  428.           > Based on sendmail V5.??  (pre-1988 version)
  429.         * MH Message Handler (mhmh)
  430.           - MH mail handling system and commands.
  431.           > version ??.?? of MH.
  432.  
  433.     3   Multi-User Services Program (multiple)
  434.         * Accounting Support (act)
  435.           - commands and scripts for system process accounting.
  436.         * System Activity recording (sar)
  437.           - sar, sag
  438.           > badly placed: timex.     
  439.         * Inter-Workstation Commands (iwc)
  440.           - confer, id, mesg.
  441.         * Terminal Support (trm)
  442.           - commands used with some special ascii graphics displays
  443.         like Tektronix 4014 terminals.
  444.           - tprint, graph, greek, tplot, tc, hp.
  445.           - support libraries libplot.a, libprint.a lib4014.a, ect..
  446.         * Advanced Display Graphics Support (gsl)
  447.               - Graphics routines for progamming the various HFT displays
  448.                 on the RT, including the 6153, 6154, 6155 and megapel.
  449.           - Required prereq for installing IBM's X11 product.
  450.         * Graphics Device Drivers (vdi????)
  451.           - device drivers for IBM RT professional Graphics Series LPP
  452.         also useful for Graphics Support Library subroutines.
  453.           - vdi drivers for IBM devices: 3812, 4201, 5152, 5182, 6180,
  454.         7371, 7372, 7375, ega, and vdimeta-file format.
  455.         * Graphics and Statistics commands (graf)
  456.           - commands used with some special ascii graphics displays
  457.         like Tektronix 4014 terminals.
  458.           - The /usr/bin/graf directory including, 
  459.         hardcopy, ceil, pie, plot, qsort, rand, erase, ect..
  460.         * HFT Examples Programs (hft)
  461.           - /usr/lib/samples/hft
  462.           - /usr/lib/vtm fonts for hft displays.
  463.  
  464.     2   Virtual Resource Manager Device Driver (vtmdd)
  465.         - Seperate components of these diskettes are installable
  466.               by group of related drivers, or by individual driver.
  467.           Listed below by group, with selections in that group:
  468.         * RT 3278/79 Emulation Adapter
  469.         - 3278/79 DFT VRM Device Driver (dft)
  470.         - 3270 AIX Device Driver (3270dd)
  471.         * RT baseband Adapter
  472.         - Baseband VRM Device Driver [Ethernet] (enet)
  473.         - Standard Baseband Data Link Control [DLC] (ethllc)
  474.         - Block I/O AIX Device Driver (biodd)
  475.         * RT Multiprotocol Adapter
  476.         - MPDP VRM Device Driver plus microcode (mpdp)
  477.         - SDLC DLC (sdlcllc)
  478.         - 3270 AIX Device Driver (3270dd)
  479.         * RT SCSI Adapter
  480.         - SCSI VRM Device Driver (scsi)
  481.         * RT Token-Ring Adapter 
  482.         - Token-Ring VRM Device Driver (token)
  483.         - Token-Ring Diagnostics (trd)
  484.         - Token-Ring DLC (trllc)
  485.         - Block I/O AIX Device Driver (biodd)
  486.        Note: Installable only from the individual device driver menu
  487.         - IEEE Baseband DLC: 802.2 DLC with
  488.            802.3 medium access control protocol procedures (eth3llc)
  489.  
  490.     3   Interface Program for use with TCP/IP (tcpip)
  491.         - includes arp,finger,host,ping,rexec,rlogin,telnet,tftp,rwho,
  492.           whois,setclock,lprbe,talk,netstat,route,rcp,hostid,slattach.
  493.         - daemons: inetd,gated,routed,ftpd,tftpd,rwhod,fingerd,lpd,named.
  494.         > badly placed: hostname,portmap,rpcinfo,x25load.
  495.  
  496.     1   INED program (INed)
  497.         - "e" editor command, and associated control files.
  498.  
  499.     1   Asyncronous Terminal Emulation Program (ate)
  500.         - ate, xmodem.
  501.  
  502.     1   Base PC Network Services Program (lanserv)
  503.         - IBM PC original PC Network BROADBAND adapter network support.
  504.         (NOT required to be installed for Ethernet adapter use)
  505.  
  506.     2   Usability Services Program (panels)
  507.         - the /usr/lib/screen directory tree of panels.
  508.         > badly placed:
  509.               shmsystem - the shared memory segment manager!
  510.           actmngr - hft activity manager - invokes a bourne shell.
  511.  
  512.     3   Systems Network Architecture Services (snaserv)
  513.         - SNA protocol support, LU services VRM driver.
  514.         - multi-protocol adapter SNA support.
  515.  
  516.     1   DOS Server program (pci)
  517.         - support of the ADDU liscensed program product,
  518.               extending disk and terminal support to PC users.
  519.         > badly placed: aix2dos, dos2aix  
  520.         NL to CR-NL and CR-NL to NL text conversion utilities!
  521.  
  522.     2   Update
  523.         - Initial update fixes to distributed AIX 2.2.1.
  524.         - MUST be installed after ALL optional AIX sections have
  525.           been installed and BEFORE *ANY* other updates.
  526.  
  527. ------------------------------
  528. S.8 - Maintence? What updates are available for AIX?
  529.  
  530.       IBM offical support of AIX V2.2.1 ended on June 1, 1991.
  531.  
  532.       They however always have had service available on a fee and time basis.
  533.       Some academic instutions still have IBM service contracts in effect, 
  534.       and some support may be available via the SE in charge of the account.
  535.  
  536.       After maintaining the AIX/RT systems for many years for the place where
  537.       I work, and doing a little cross referencing and homework I have 
  538.       managaged to put together a comprehensive list of the maintance diskette
  539.       history of AIX/RT for the V2.2.1 versions of AIX.  
  540.  
  541.       Some parts of AIX history is unclear, especially in its first few
  542.       updates that were issued.  Support by IBMs level1 support center
  543.       was VERY spotty at first, especially as IBM was firming up its support
  544.       policies for AIX.
  545.  
  546.       Update disks were issued in two major catagories.  The 17## series
  547.       disks were generated by the support structure of IBM and were only
  548.       sent out to customers calling in with specific problem areas needing
  549.       immediate problem relief.  The 17## updates were supposed to be 
  550.       not completely regression tested aginst all products.  The 27## 
  551.       updates were supposed to be completely tested.  Later in the AIX/RT
  552.       product lifetime, the 17## disk became the ONLY update disks issued.
  553.  
  554.       Updates, even when offical were never automatically shipped to 
  555.       customers.  Only if they called with a problem were any updates
  556.       sent out.  The earliler version of AIX V2 (2.1.x) used 15## and 16##
  557.       numbered series update disks.
  558.  
  559.       Unfortunately, different product development groups within IBM did
  560.       not coordinate the update numbers with each other, so some products
  561.       have the SAME update number, but cover ONLY its product area.
  562.       Other products use their own unique numbering scheme.
  563.       
  564.       All update disks supposedly are supposed to include ALL prior earlier
  565.       maintence, completely superceeding all prior maintence.  This policy
  566.       however was later changed towards the end of the AIX support cycle.
  567.       Disks labeled "-- NEW BASELINE --" were the final disk sets with
  568.       complete prior updates on them, subsequent update disks start over on
  569.       update building and require the baseline set be installed first.
  570.  
  571.       Each disk set is one PTF (Program Temporary Fix) and include one
  572.       or more APAR (?) fixes.  PTFs for AIX are always numbered U###### and
  573.       AIX APARs are numbered IX######.  
  574.  
  575.       [ Some fields are incomplete.  Anybody with one of the updates
  576.         listed that have some fields with question marks, I need more 
  577.         information and/or corrections would be welcomed. - MW ]
  578.  
  579. WARNING:  Personal experience with another RT user trying to update his
  580.   system from the INITIAL distribution disks, shows that the update process
  581.   is BROKEN.. UNLESS the initial two disk update that is supplied with the
  582.   system is installed first, BEFORE any other attempted maintence.  
  583.   That update disk pair shows up in the opsys maintence history as 1721. 
  584.   Do not confuse this with the X-windows or TCP/IP updates also labeled 1721.
  585.  
  586. Notes for the following chart:
  587.     PE    PTF in Error - one or more fixes on this disk have some
  588.         problem, not necessarly critical, but with hi-impact on
  589.         system operation and potentially could be critical.
  590.     EFIX    Disk was only sent to a customer if a problem being worked
  591.         on with the support center was fixed a an intermediate level
  592.         and needed immediate solution.  The fix set normally was not
  593.         considered a full PTF package, nor completely tested.
  594.     APAR    ?
  595.     sup    Superceedes the ptf's specified.
  596.     pre    Prerequesite PTF's listed need to be installed first.
  597.     coreq    PTF's listed must be installed at the same time.
  598.  
  599.     MPP    Multi-Program Product - mostly the OPSYS, plus fixes to
  600.         selected base and elective install parts.
  601.     VRM    Fixes for the Virtual Resource Manager, usually installed
  602.         by IPL from diskette, and replace the entire VRM.
  603.     TCPIP    Diskettes are for the TCP/IP part of AIX.
  604.     DOSV    DOS services part of base AIX.
  605.     SNA    SNA services part of base AIX.
  606.  
  607.     Xwin    Diskettes are for the AIX Windows optional product.
  608.     NFS11    Diskettes are fixes for the NFS 1.1 optional product.
  609.     NFS12    Diskettes are fixes for the NFS 1.2 optional product.
  610.     DS    Diskettes are fixes for Distributed Services optional product.
  611.     WHIP11    Workstation Host Interface Program V1.1 optional product.
  612.     VSP    VS Pascal optional product.
  613.     VSF    VS Fortran optional product.
  614.     VSC    VS Cobol optional product.
  615.     PHGS    Personal GraPHIGS optional product.
  616.     COPRC   RT PC-AT Coprocessor Services.
  617.  
  618.   Within each product area the list is ordered in the sequence of release
  619.   by IBM for that portion of the operating system.
  620.  
  621. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  622. ==============================================================================
  623. 1706    ?    Inst    ?        ?    UNKNOWN WHAT THIS IS
  624.  
  625. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  626. ==============================================================================
  627. OPSYS/MPP        Component 560106103
  628.  
  629. 1721    N/A    MPP    ??/??/88    2    Shipped with the AIX 
  630.                         distribution set.. *MUST*
  631.                         be installed.
  632.  
  633. 2701    N/A    MPP    12/16/88    3    PartNum 002701[1-3]
  634.  
  635. 1725    N/A    MPP    02/09/89    2    EFIX
  636.  
  637. 1733    N/A    MPP    03/30/89    5    EFIX
  638.  
  639. 2702    U400722    MPP    03/30/89    ?    ?
  640.  
  641. 1734    N/A    MPP    04/05/89    5    EFIX
  642.  
  643. 1735    N/A    MPP    04/06/89    5    EFIX
  644.  
  645. 1736    N/A    MPP    04/26/89    5    EFIX
  646.  
  647. 1739    N/A    MPP    05/11/89    3    EFIX
  648.  
  649. 1740    N/A    MPP    05/11/89    7    EFIX
  650.  
  651. 2703    U400727        06/22/89    10    sup(2701, U400722)
  652. 2703-D    U400762    MPP    08/08/89        doc only for(U400722,U400727)
  653.  
  654. 1742    ?    MPP    06/15/89?    ?    EFIX  BAD  csh problems
  655.  
  656. 1743    ?    MPP    06/??/89?    ?    EFIX
  657.  
  658. 1745    ?    MPP    06/??/89?      ?    EFIX BAD tty devices problems
  659.  
  660. 2704    U400751    MPP    08/02/89    12    sup(U400722,U400727,U400762)
  661.     U400755                    doc only for(U400751)
  662.  
  663. 1749    ?    MPP    08/??/89    ?    EFIX  BAD breaks tty xon/xoff
  664.  
  665. 1750    ?    MPP    08/??/89    ?    EFIX 
  666.  
  667. 1751    U400770        08/30/89    ?    BUILT BAD..
  668.                         DO NOT APPLY BREAKS NFS
  669.  
  670. 1757    U400857    MPP    12/01/89    9    coreq(U400849,U400843)
  671.  
  672. 1758
  673. 2705    U400876    MPP    12/21/89    ?    sup(U400751,U400727,U400722)
  674.                         pre(U400828,U400849,U400843)
  675.                         New INSTALL/MAINT diskette
  676.     U400893                    doc only dup(U400876)
  677.  
  678.  
  679. 2706    U400991    MPP    03/28/90    15    sup(U400876,U400751,U400727)
  680.                         pre(U400980,U400889)
  681.                 (included new Inst/Maint diskette)
  682.  
  683. 1763    U??????    MPP    ??/??/??    ?    EFIX PE 
  684.  
  685. 1764    U??????    MPP    ?        ?    EFIX PE
  686.  
  687. 1765    U401041    MPP    05/04/90    ?    EFIX PE 
  688.  
  689. 1766    U401075    MPP    06/06/90    10    EFIX PE coreq(U401043,U401039)
  690.  
  691. 1769    ?    MPP    ?        ?    EFIX
  692.  
  693. 1770    ?    MPP    ?        ?    EFIX BAD DO NOT APPLY!
  694.  
  695. 1772    U401227 MPP    11/05/90    12    sup(U401139,U401041,U400991,
  696.                             U400876,U400751 U400727)
  697.                         pre(U401046,U401168,U401169,
  698.                             U401123)
  699.                         PE(IX08395,IX08240)
  700.  
  701. 1773    U401293    MPP    01/21/91    12    BAD-BAD-BAD-BAD 
  702.                                                 DO NOT INSTALL!
  703.                         fix set was created incorrectly
  704.                         breaks NFS among other things.
  705.  
  706. 1773    U401374    MPP    05/16/91    12    -- NEW BASELINE --
  707.                         sup(U400722,U400727,U400751,
  708.                             U401041,U401075 U401227,
  709.                             U401293)
  710.  
  711. 1774    U401356    MPP    05/16/91    3    label says volid=1772
  712.  
  713. 1777    ?    MPP    ?        ?    EFIX
  714.  
  715. 1779    U401382    MPP    05/31/91    4    sup(U401356)
  716.  
  717. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  718. ==============================================================================
  719. X-Windows 2.1
  720.  
  721. 1714    N/A    Xwin    04/17/89    2
  722.  
  723. 1721    N/A    Xwin    
  724.  
  725. 1723    U400749    Xwin    07/28/89    3    coreq(U400751)
  726.  (This update and ALL later X11 updates takes AIXwindows to X11R3 for AIX/RT)
  727.  
  728. 1726    U400769    Xwin    09/18/90    3    coreq(U400751)
  729.     U400844            
  730.  
  731. 1732    U400843    Xwin    12/01/89    3    coreq(U400751)
  732.     U401187
  733.  
  734. 1733    U400889    Xwin    01/02/90    3    coreq(U400876)
  735.  
  736. 1736    U400947    Xwin    03/21/90    3    PE coreq(U400876)
  737.     
  738. 1737    U401123    Xwin    07/18/90    4    PE coreq(U400991) BAD-BAD
  739.  
  740. 1738    U401307    Xwin    02/14/91    4    
  741.  
  742. 1739    U401386    Xwin    06/12/91    ?
  743.  
  744. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  745. ==============================================================================
  746. VRM 2.2            Component 560106203
  747.  
  748. 1702    ?    VRM    ?        ?    EFIX
  749.  
  750. 1705    ?    VRM    05/11/89    2    EFIX
  751.  
  752. 1706    ?    VRM    08/18/89?        EFIX
  753.  
  754. 1707    ?    VRM    08/18/89?        EFIX
  755.  
  756. 2707     U400754    VRM    08/08/89    2    PE coreq(U400751) BAD!
  757.                         wont IPL if disk errors
  758.  
  759. 2710    U400828    VRM    11/07/89    2    sup(U00754) 
  760.                         coreq(U400876)
  761.                         same as 1707 disks
  762.  
  763. 1710    ?    VRM    ?        2    EFIX coreq(MPP1757)
  764.  
  765. 1711    ?    VRM    10/20/89    2    EFIX
  766.  
  767. 1712    U401046    VRM    05/15/90    2    sup(U400754,U400828)
  768.                         coreq(AIX2.2.1)
  769. 1714    U401284    VRM    02/14/91    2    sup(U400828)
  770.         (corrects random floating point machine checks)
  771.  
  772. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  773. ==============================================================================
  774. TCP/IP            Component 560106103
  775.  
  776. 1707    ?    TCPIP    02/09/89    1    EFIX
  777.  
  778. 1713    ?    TCPIP    ?        ?    EFIX
  779. 1716    ?    TCPIP    ?        ?    EFIX
  780. 1718    ?    TCPIP    ?        ?    EFIX PE
  781. 1719    N/A    TCPIP    06/??/89    ?    EFIX PE
  782. 1720    ?    TCPIP    ?        ?    EFIX PE
  783. 1721    ?    TCPIP    ?        ?    EFIX
  784. 1722    ?    TCPIP    ?        ?    EFIX
  785. 1724    ?    TCPIP    ?        ?    EFIX PE (ftp is busted)
  786. 1728    ?    TCPIP    10/24/89    ?    EFIX PE    
  787. 1730    ?    TCPIP    09/21/89     2    EFIX PE    
  788. 1731    ?    TCPIP    10/08/89    2    EFIX     
  789. 1732
  790. 1733    U401072    TCPIP    05/22/90    PE    coreq(U401043,U401041)
  791.  
  792. 1734    U401168 TCPIP    08/14/90    2    sup(U401072)
  793.     U401195                    dup(401168)
  794.  
  795. 1736    U401278    TCPIP    01/18/91    2    -- NEW BASELINE --
  796.                         pre(U401168)
  797.  
  798. 1741    ?    TCPIP    ?        ?    EFIX PE
  799.  
  800. 1742    U401385    TCPIP                pre(U401278)
  801.  
  802. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  803. ==============================================================================
  804. NFS V1.1        Component 560115901
  805.  
  806. 1110    U400764    NFS11    09/01/89    1
  807.  
  808. 1112    U400865    NFS11    12/01/89    1    sup(U400764)
  809.                         coreq(U400751)
  810.  
  811. 1113    U400890    NFS11    01/02/90    1    sup(U400865,U400864)
  812.                         coreq(U400876)
  813.  
  814. 1115    U400983    NFS11    04/12/90    1    sup(U400890,U400865)
  815.  
  816. 1116    U401043    NFS11    05/07/90    1    sup(U400893,U400890,U400865,
  817.                             U400764)
  818.                         coreq(U401041)
  819.     U401052                    dup(U401043)
  820.     U401104                    dup(U401043)
  821.     U401132                    dup(U401043)
  822.     U401139                    dup(U401043)
  823.  
  824. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  825. ==============================================================================
  826. NFS V1.2        Component 560115901
  827.  
  828. 1201    U401169    NFS12    10/12/90    2    coreq(U401041,U401075)
  829. 1202    N/A    NFS12    02/14/91 ?    ?    EFIX
  830. 1203    N/A    NFS12    06/05/91 ?    ?    EFIX
  831. 1204    U401387    NFS12    05/31/91    2    sup(U401169)
  832.  
  833.     Note: even though 1204 came out BEFORE 1203, the 1204 fix disk
  834.           indiates that the apars fixed on 1203 are in 1204.
  835.  
  836. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  837. ==============================================================================
  838. DOS server (PCI)    Component 560115701
  839.  
  840. 1703    ?    DOSV    ?        ?
  841.  
  842. 1706    U401044    DOSV    05/07/90    1    sup(U400984,U400842)
  843.                         coreq(U400991)
  844.                         pre(AIX2.2.1,NEW-DOSSERV)
  845.  
  846. 1709    U401383 DOSV    05/31/91    1    
  847.  
  848. ==============================================================================
  849. SNA Services        Component 5601061??
  850.  
  851. 1708    ?    SNA    ?        ?
  852. 1711    ?    SNA    ?        ?
  853. 1712    ?    SNA    ?        ?
  854. 1713    ?    SNA    ?        ?
  855. 1714    ?    SNA    ?        ?
  856. 1719    U401137    SNA    07/31/90    ?    PE pre(U401139)
  857. 1720    U401218 SNA    ?        3    
  858. 1722    U401388 SNA    ?        3    Last issued update
  859.  
  860. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  861. ==============================================================================
  862. Dist Serv 1.2.1        Component 560106103
  863.  
  864. 1706    U400763    DS    09/01/89    ?    pre(U400727,U400751)
  865.  
  866. 1708    ?    DS    ?        ?    coreq(U400770)
  867.  
  868. 1709    U400849    DS    12/01/89    ?    sup(U400763)
  869.  
  870. 1715    ?    DS    ?        ?    
  871.  
  872. 2701    U400877    DS    12/27/89    ?    sup(U400849,U400863)
  873.                         pre(U400876)
  874.     U400920                    doc only dup(U400877)
  875.     U400952                    doc only dup(U400877)
  876.     U401001                    doc only dup(U400877)
  877.     U401001                    doc only dup(U400877)
  878.     U401036                 doc only dup(U400877)
  879.     U401039
  880.  
  881. Note: Do not confuse this 2701 distributed services disks with the
  882.       2701 updates for the base operating system.
  883.  
  884. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  885. ==============================================================================
  886. Workstation Host Interface Program - V1.1
  887.  
  888. 1204    U400759    WHIP11    09/01/89    1    pre(U400727)
  889.  
  890. 1207    U401110    WHIP11    ?        ?
  891.  
  892. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  893. ==============================================================================
  894. PC Simulator 1.1.1
  895.  
  896. 1210    ?    PCSim    ?        ?
  897. 1213    U400389    PCSim    11/20/87    1    
  898.  
  899. ==============================================================================
  900. Asyncronous Terminal Emulation (ATE)
  901.  
  902. 1707    U401048    ATE    05/07/90    1    pre(U401041)
  903.  
  904. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  905. ==============================================================================
  906. RT PC AT Coprocessor services V1.1
  907.  
  908. 2206    ?       COPRC   ?               ?       ?
  909. 2207    ?       COPRC   ?               ?       ?
  910. 2209    U400???    COPRC    ?/?/87        1    ?
  911.  
  912. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  913. ==============================================================================
  914. Fortran 77  V1.1.1
  915.  
  916. 1214    ?       F77     ?               ?       ?
  917. 1239    ?    F77     ?               ?       ?
  918. 1241    U401216    F77    ?        1
  919. 1245    U401390    F77    05/31/91    1    Last issued update
  920.  
  921. Volid    PTF#    Prod    Date        #disk    Prereq/Coreq/Notes
  922. ==============================================================================
  923. VS Fortran V1.0
  924.  
  925. F18    ?    VSF    ?        ?
  926. F20B    ?    VSF    ?        ?
  927. F26    ?    VSF    ?        ?
  928. F40    ?    VSF    09/08/89    3
  929. 0G37    U401231    VSF    ?        2
  930. 0H12    U401363    VSF    05/16/91    2    Last update issued
  931.  
  932. ==============================================================================
  933. XL Fortran
  934.  
  935. Note: There IS an XLFortran for the RT, but it was not widely distributed.
  936.       I have been unable to determine if any updates were ever issued
  937.       for the product.  It was issued as a migration aid for customers to
  938.       move to the AIX V3 and RS6000 systems that had been recently announced.
  939.  
  940.       RPQ P10095  Program Number 5799-???
  941.  
  942. ==============================================================================
  943. VS Pascal
  944.  
  945. H012    U401384    VSP    ?        ?    ?
  946.  
  947. ==============================================================================
  948. VS Cobol 1.1.0
  949.  
  950. 1113    U?      VSC    ?        ?    ?
  951. 1119    U401047    VSC    ?        ?    ?
  952.  
  953. ==============================================================================
  954. Personal graPHIGS  V3.?
  955.  
  956. Note: The update numbering scheme for graPHIGS was unlike that of ANY
  957.       other RT product.  I have yet to fill in this section and understand
  958.       how they were issued. [Anybody a graPHIGS expert/user? - MW]
  959.  
  960. ?    U?
  961.  
  962. ==============================================================================
  963.  
  964. ------------------------------
  965. S.9 - How to install updates to AIX.
  966.  
  967.       Most of the install of updates MUST be done with no users logged in
  968.       to the machine, and most of the system deamons shutdown.
  969.       Login as root, get any users to logoff, and issue the 'killall' command
  970.       to kill all running processes and daemons.  Issue the 'pdisable -a'
  971.       command to disable any tty ports and psudeo terminals to prohibit
  972.       more logins while the update process is in progress.
  973.  
  974.       WARNING: With 'cron' disabled, there is no automatic periodic 'sync' 
  975.                of filesystems.  If possible, ensure that you issue a sync
  976.                command beteeen updates and at convient intervals to 
  977.                help with disk and filesystem integrity.
  978.  
  979.       Updates are installed using the 'updatep' command.  It has several
  980.       arguments, the most common are:
  981.  
  982.       -a    apply any updates on the install media.
  983.       -c    commit any currently installed updates.
  984.       -d    specifies the device or file name for updates, 
  985.             usually /dev/fd0 (the default).
  986.       -s    Display pending commit update status information
  987.       -A    Display a listing of all installed updates and APAR
  988.         history for all products, or named product section if a
  989.         argument follows the -A flag.
  990.  
  991.       Personally I like to install the update in one pass "updatep -a",
  992.       test out the system, then later, commit the update "updatep -c".  
  993.       Using this procesure for installing updates has the added bonus, 
  994.       in that if a update fails to install, it will be automaticlly backed
  995.       out, and the system restored to it's original state, rather than
  996.       leaving the system in a possibly broken state with only part of the
  997.       update installed.  
  998.  
  999.       It *IS* possible for the update to be only paritially installed,
  1000.       especially when an out of disk space, or other catastrophic failure
  1001.       occurs during the update.  (The worst is a power failure while install
  1002.       processing is in progress!)  Make sure you have a good backup of any
  1003.       user data or any needed system files PRIOR to starting ANY system update.
  1004.  
  1005.       One thing I have done is to save a copy of the current update status
  1006.       before starting, and obtain one after the update, and run a diff the
  1007.       files.  This way I can get a list of what has changed by the updates.
  1008.       This command is like this:
  1009.           updatep -A >/someplace/b4.up####    
  1010.  
  1011.       When installing updates, the update process first saves a backup copy
  1012.       of ALL files to be replaced and selected for install.  For proper 
  1013.       update there must be enough space in the /usr filesystem in the
  1014.       /usr/lpp directory tree to hold a backup copy of all updated files,
  1015.       and changed library routines.  Some updates rebuild the kernel, and you
  1016.       must have at least enough free space in the root filesystem to hold at
  1017.       least two times the size of a standard '/unix' kernel file.
  1018.       Extra copies of the kernel can be found in the root filesystem named:
  1019.             /unix.YYDDD.nnn
  1020.       With "YY" the last two digits of the year, and "DDD" the julian day of
  1021.       the update that created this copy of the old kernel.  These can be safely
  1022.       removed after the update that changed the kernel has been comitted.
  1023.  
  1024.       As always, the more free space in /usr and in /tmp, the safer the
  1025.       install will be.
  1026.       
  1027.       Using the 'updatep -a' the system will read the diskette#1 disk
  1028.       and will prompt you with a series of questions making sure you wish
  1029.       to proceed, and also to display the update disk product area
  1030.       and copyright information.
  1031.  
  1032.       For updates with a single product, the updatep program will now
  1033.       proceed to read the update media, and replace or change the necessary
  1034.       files.  For MPP or base-OS updates, a menu will be displayed with a
  1035.       numbered list of product updates found on the media that are also 
  1036.       currently installed on the system.  There will be two columns listed:
  1037.  
  1038.       - No special processing needed.
  1039.        - Special processing required.
  1040.  
  1041.       Some updates, like X11, have several sections.  These will also be
  1042.       displayed with a numbered list, and the last number to do all
  1043.       updates at once.
  1044.       
  1045.       Some base-OS product updates require a kernel rebuild.  By avoiding those
  1046.       products first, and installing the others in groups, you can shorten
  1047.       the amount of time required to update a system.  Updates that change
  1048.       the kernel, after being installed, cause the system to automaticlly 
  1049.       shutdown and reboot, which means that you have to login again, killall,
  1050.       pdisable, and then when ready, comit the update.
  1051.  
  1052.       Changes or installation of these products or updates will force a kernel
  1053.       rebuild:
  1054.           - Block I/O Drivers
  1055.           - Ethernet Drivers
  1056.           - SCSI drivers
  1057.           - 3270 Device support
  1058.           - VRM device drivers
  1059.  
  1060.       Additional updates are not allowed to be installed until any prior
  1061.       update has been comitted.
  1062.  
  1063.       If you are useing diskettes as your update source, during the update
  1064.       process, follow all prompts very carefully for when to insert a
  1065.       different disk.  Due to the structure of the update disks, if more than
  1066.       one section on the left side is selected, the update process will ask,
  1067.       and re-ask (and RE-ask) for the disks.  The pattern of disks is
  1068.       something like this:
  1069.       1  1  1,2  1,2,3  1,2,3,4  1,2,3,4,5  1,2,3,4,5,6 .. ect...
  1070.       
  1071.       Note: Some of the update disks replace the 'restore' and 'backup' 
  1072.       commands.  This is true of the 1773 update, and others.  When starting
  1073.       the OS base opsys updates on those disks, updatep will read about to
  1074.       disk 11 and restore only those 2 files... *THEN* it will actually come
  1075.       back and re-ask for disk number 1, and then start the rest of the
  1076.       update of the system.  Follow the prompts very carefully and there
  1077.       will not be a problem.
  1078.  
  1079.       DANGER:  DO NOT use 'installp' with update disks, and vis versa.
  1080.       You can seriously damage the system.
  1081.  
  1082. ------------------------------
  1083. S.10 - Can I install updates from other than floppies?
  1084.  
  1085.     Yes.  Using the bffcreate command you can make a file of the
  1086.         contents of any of the update disks in a sutable format for
  1087.         installing directly by specifiying the resulting disk
  1088.     file as the install device, instead of /dev/rfd0, the default
  1089.     for the updatep command.
  1090.  
  1091.     To create the disk file you must have enough /tmp space to
  1092.     hold the entire contents of the update disk set TWICE.  If your
  1093.     /tmp area is too small, you can point the work area for 
  1094.     bffcreate to a different place using the -w flag.
  1095.  
  1096.        bffcreate -v -w/otherfs
  1097.     
  1098.         WARNING: The -w flag MUST have no space following the 'w' or the
  1099.         specified work area will be ignored.
  1100.  
  1101.     The resulting file will ONLY be placed in the following
  1102.     directories:
  1103.      - update disks: /usr/lpp.update 
  1104.        with a file name of 'updt.yyddd.nnn'
  1105.        where yyddd is the Julian day and nnn is a relative number.
  1106.        The resulting file may then be renamed to something easy to
  1107.        remember, and the updatep utility can be directed to that
  1108.        file by:
  1109.  
  1110.       updatep -a -d/usr/lpp.update/filename
  1111.  
  1112.      - product install disks: /usr/lpp.install 
  1113.        with a file name of 'programname.vv.rr'
  1114.        where programname is a partial program name and vv and rr
  1115.        are numbers of the version and release of the product.
  1116.        This file will be in the proper format for use with:
  1117.         installp -d/usr/lpp.install/filename
  1118.     
  1119.     NOTE: If your /usr area is too small to receive the updates you
  1120.     can make another filesystem named /usr/lpp.update or /usr/lpp.install
  1121.         and overmount it, or create soft links to other directories in 
  1122.         a larger filesystem. The bffcreate program has no way of changing
  1123.     the output directory file location.
  1124.     
  1125. ------------------------------
  1126. S.11 - Brief overview of the AIX/RT install process.
  1127.  
  1128.    * First or new installation process
  1129.      WARNING: The installation procedure outlined below assumes
  1130.      either that you do not have any software currently installed on your
  1131.      machine, or that you do not wish to save any of the files on your
  1132.      machine. If you wish to save any files or minidisks, refer to the
  1133.      reinstallation section.
  1134.  
  1135.      You should have in front of you the manual:
  1136.        "Installing and Customizing the AIX Operating System."
  1137.  
  1138.      Step 1: Planning your minidisks.
  1139.  
  1140.         Complete the minidisk worksheet as described in the manual,
  1141.         chapter 1.  There are some excelent worksheets that will give you
  1142.         the approximate needed sizes of the system filesystems when including
  1143.         most of the optional product areas.  These charts also show which
  1144.         filesystems that the product installation will be placing modules.
  1145.  
  1146.         Selecting the sizes of your minidisks depends on how much of the
  1147.         base AIX V2 system you decide to install, the size of the hard drives
  1148.         that you are installing to, and how much space you will desire for any
  1149.         of your own user areas and additional application software.
  1150.  
  1151.         The '/vrm' filesystem will need at least 3800 blocks. I recommend more
  1152.         if you are making any alterations of the vrm filesystem.  I personally
  1153.         use around 5000 blocks. I, however, have been doing some VRM hacking,
  1154.         and this leaves me about 1000 blocks to spare.  In normal use the
  1155.         '/vrm' space is static, so any extra will be wasted. 
  1156.  
  1157.         The size of root (/) will vary a lot.  Make sure that you have
  1158.         enough space for at least two copies of the kernel (/unix) for
  1159.         update handling.  A working *MINIMUM* would be around 2600 to 3000
  1160.         blocks free.  More if you can spare it.  A useful size of root will
  1161.         vary from 28000 to 34000 blocks, or more depending on your needs
  1162.         and system usage.
  1163.  
  1164.         The size of /usr will vary the most, and really depends on how
  1165.         much of the optional products you install.  To have X11, TCP/IP
  1166.         and NFS will require in the range of 60000 to 150000 blocks.
  1167.         Space is used for temporary areas for mail (/usr/spool/mqueue)
  1168.         and storage of mail before being read (/usr/mail). Additional space 
  1169.         will be needed for printing (/usr/spool/lpd and /usr/spool/qdaemon),
  1170.         and system temporary space (/usr/tmp).  UUCP usage will also need
  1171.         storage space in /usr/spool/uucp.
  1172.  
  1173.         Sizing '/tmp' will depend on the amount of space you will want
  1174.         for editing, compiler work space, temporary mail files and work
  1175.         areas.  A good working minimum is 5000 to 10000 blocks.
  1176.         
  1177.         User accounts by default use '/u' for home directories but can be
  1178.         placeed in any user filesystem, and thus will vary considerably
  1179.         accorting to your needs.  Minimum space is 1000 blocks.
  1180.  
  1181.         Note: I have managed to install AIX V2.2.1 on two 40Mb disks, but
  1182.         it had no dump space, bare minimum pagespace (equal to system
  1183.         real memory), and a bare minimum /u, and only the base OS + TCP/IP
  1184.         installed.  Not a very useful system.
  1185.  
  1186.      Step 2: Install VRM.
  1187.  
  1188.         Boot with the first VRM diskette and follow the instructions
  1189.         as described in the manual, chapters 2 and 3.
  1190.       
  1191.         I have found that this procedure works best:
  1192.            - Set the date and time, AND timezone *FIRST*.  This will
  1193.              make all the rest of the installed files with the correct
  1194.              date, and the NVRAM clock will be proper GMT time according
  1195.              to your entered local time.
  1196.            - Choose the option 'change current choices and install'.
  1197.              This option will allow you to select the sizes of the
  1198.              VRM and initial Pagespace area.
  1199.  
  1200.      Step 3: Installing the Base System Program.
  1201.  
  1202.         Boot with the Install/Maintenance diskette and follow the
  1203.         instructions as described in the manual, chapter 4.
  1204.  
  1205.         The Base System Program must be installed before installing any
  1206.         other operating system component.
  1207.  
  1208.         I have found that this procedure works best:
  1209.            - Choose the option 'change current choices and install'.
  1210.              This option will allow you to select the sizes of all the
  1211.              base OS filesystems: /tmp, /usr, /, /u, and the dump space.
  1212.            - Use the menus of displayed filesystems to set the sizes
  1213.              of all the areas.  Once a size is chosen, re-sizing it
  1214.              at this point is easy, after install, it is hard, so make
  1215.              good choices now. :-)
  1216.  
  1217.         After completing the disk sizing, the install process will proceed
  1218.         reading the eight disk set of base OS, and all filesystems will be
  1219.         sized and checked.  You will also be prompted for an initial userid
  1220.         to be created.  It will also ask if you want to have that user
  1221.         auto-logged in, or to run in complete multi-user mode.
  1222.  
  1223.      Step 4: Installing additional operating system programs.
  1224.  
  1225.         In addition to the Base System Program, the AIX operating system
  1226.         includes programs such as Extended Services, Multi-user Services and
  1227.         Usability Services.
  1228.  
  1229.         Use the "installp" command to install these additional programs
  1230.         and follow the instructions as described in the manual, chapter 5.
  1231.  
  1232.         Products you should consider installing:
  1233.            - Extended services sections: 
  1234.               - Administriative support (for tar and cpio)
  1235.               - Extended programming support (compilers, sed and awk)
  1236.               - Sendmail 
  1237.               - UUCP  - if modem attached to usenet, or others.
  1238.            - Multi-user services sections:
  1239.               - System activity recording
  1240.               - Interworkstation commands (some scripts want the 'id' command)
  1241.               - GSL - for sure needed if running IBM X11 product.
  1242.            - VRM Device drivers sections:
  1243.               - Baseband adapter (if using ethernet)
  1244.               - SCSI adapter (if using the IBM RT SCSI adapter)
  1245.               - Token-Ring adapter (if using that card)
  1246.            - TCP/IP  - if attached to a network.  Required for X11.
  1247.   
  1248.         When you finished installing the additional programs,
  1249.         delete any leftover '/unixYYDDD.###' files using the "del" command.
  1250.  
  1251.      Step 5: Updating operating system programs.
  1252.  
  1253.         After you installed the optional programs included with AIX, you
  1254.         *MUST* apply the changes included on the base product Update Diskettes.
  1255.  
  1256.         Use the "updatep -ac" command and follow carefully the instructions
  1257.         as described in the manual, chapter 5 page 5-15.
  1258.  
  1259.      Step 6: Add any optional Licensed product to the system.
  1260.         
  1261.         After you have a running, installed system, might I suggest a
  1262.         backup of the system?   
  1263.  
  1264.         Next, install any other products you need, such as:
  1265.           NFS, X11, special compiers, or other programs.
  1266.  
  1267.      Step 7: Update system to current maintence level.
  1268.         
  1269.         After much use and experience with AIX V2, I have found that the
  1270.         system is most useful if at least the following updates are
  1271.         installed, if not at the last issued update level:
  1272.            - 2706  For the base OS and the other base products.
  1273.            - 1734  For TCP/IP
  1274.            - 1738  For X11 AIXWindows.
  1275.            - 1116  For NFS 1.1
  1276.            - 1204  For NFS 1.2.  Note: 1773, the sucessor to 2706 is required
  1277.                    for installing the NFS 1.2 product.
  1278.  
  1279.      Step 7: Installing applications.
  1280.  
  1281.         You have now installed the AIX operating system, and your system
  1282.         is ready to use. If you have additional programs to install, follow the
  1283.         installation procedure as described in the publications provided with
  1284.         these products.
  1285.  
  1286.    * Re-installation process.
  1287.   
  1288.       Save any of your tailored system configuration files, and any
  1289.       special files you require. The following list is some suggestions:
  1290.           /etc/rc.include
  1291.           /etc/passwd
  1292.           /etc/group
  1293.           /etc/security/*
  1294.           /etc/hosts
  1295.           /etc/filesystems
  1296.           /usr/adm/sendmail/*
  1297.           /usr/adm/uucp/*
  1298.           /u/*
  1299.  
  1300.       ATTENTION!!  This list might NOT be complete !!!
  1301.  
  1302.      Reinstall the VRM and the AIX Base System Program.
  1303.  
  1304.      The AIX installation process destroys the /(root), /usr and /tmp
  1305.      minidisks.  If you change any of the characteristics of the /u minidisk,
  1306.      it will also be destroyed.
  1307.  
  1308.      Reinstall any additional programs from the set that you had on your
  1309.      previous system that you desire.
  1310.  
  1311.      Enter "mdrc" (minidisk recall command) to restore your user-defined
  1312.      minidisks.
  1313.  
  1314.      Restore the system files that you had backed up from your previous
  1315.      system.  Note: You must NOT directly replace /etc/filesystems from
  1316.      your backup.  It is only for reference purposes.  It would need
  1317.      to be merged with your newly installed /etc/filesystems if you have
  1318.      any NFS mounts in it.
  1319.  
  1320.      Shutdown the system and reboot with <ctl>-<alt>-<pause>.
  1321.  
  1322.      [ This section may need more work. Any other ideas/changes? - MW]
  1323.  
  1324. ------------------------------
  1325. S.12 - Compiler usage questons?
  1326.  
  1327.       The AIX V2 system is at heart, a system V release 2 base, with
  1328.       BSD 4.2 and some BSD 4.3 extensions mixed in, it also has some IBM
  1329.       extensions and facilities by Interactive Systems, mixed in as well. 
  1330.       The standard C compiler is mostly K&R compliant with additional compiler
  1331.       flags to support BSD portablity.  There is *SOME* ANSI compliance in the
  1332.       include libraries, but it is far from complete.  No ANSI prototyping
  1333.       is supported by the standard compiler.
  1334.  
  1335.       The compiler shipped with AIX has its own standard setup, with 
  1336.       flags to make the include files SYSV compliant, and BSD compliant.
  1337.  
  1338.       SYSV way:
  1339.     cc  -O -o <foo>  foo.c    <and other flags.>
  1340.        or
  1341.  
  1342.     cc -DSYSV and/or -DUSG  -O -o <foo> foo.c   <and other flags.>
  1343.         Note: The supplied header files for AIX/RT do not test for the
  1344.               SYSV or USG define, but a lot of public code does.
  1345.                   X11R5 has a -DUSGISH for a merged type system like AIX/RT.
  1346.     
  1347.       BSD compatibility flags.
  1348.     cc -DBSD -DBSD_INCLUDES -DBSD_REMAP_SIGNAL_TO_SIGVEC  \
  1349.         -O -o <foo>  foo.c -lbsd
  1350.  
  1351.     Note: There is another BSD flag: -DBSD_COMPILE_ONLY
  1352.           This flag will cause additional defines and includes
  1353.           that may produce a correct compile, but most likely will
  1354.           NOT execute correctly, due to possibly incorrect interface
  1355.           defines, or use AIX/RT unsupported system functions.
  1356.  
  1357.       The following discusses some of the other non-standard and
  1358.       special compiler flags.
  1359.     
  1360.       Programs that have large static arrays and large structures may
  1361.       need the '-a' flag.  Using this flag will reserve an extra register
  1362.       for addressing, thereby reducing the optimization capabilities of the
  1363.       compiler.
  1364.  
  1365.       X11 programs, and other large macro heavy and/or lots of functions
  1366.       sources, and those with lots of external references may need one or
  1367.       more of these flags to increase the internal tables of the compiler:
  1368.     -Nn####        - symbol table, default size 1500.
  1369.     -Nd####        - dimension table, default size 2000.
  1370.     -Np####        - constant pool, default size 600.
  1371.     -Nt####        - parse tree, default size 1000.
  1372.     
  1373.       For programs that are heavy on floating point code may be GREATLY
  1374.       assisted by the following compile time flags:
  1375.     -f   Generates code that will use either the standard Floating-
  1376.          Point accelerator (FPA), or the Advanced FPA. 
  1377.              The binaries created with this flag will NOT run without at
  1378.              least one of the FPA's installed.  Automatically includes the
  1379.              libfm.a math library.
  1380.     -f2  Generates inline code to use ONLY the Advanced Floating-Point
  1381.          Accelerator and Advanced processor card.
  1382.          Automatically includes the libfm.a math library.
  1383.  
  1384.       The inline compiler flag -Q may speed up execution time at the 
  1385.       expense of increased module size. 
  1386.     -Q!        Automatic inlining.
  1387.     -Q?        Show reason in output file for no inlining.
  1388.     -Q-name,name2   Do not inline 'name'.
  1389.     -Q+name,name2   Force inline of 'name'.
  1390.     -Q|num        Limit size of function to inline,
  1391.              default size is 100 operations. 
  1392.     -Q#num        Limits the expansion of an individual call to num
  1393.             intermediate operators. Defaults to 100.
  1394.     -Q-@file    Reads list of forbidden functions from 'file'.
  1395.     -Q+@file    Reads list of requested functions from 'file'.
  1396.  
  1397.         Note: Requesting a function for inlining overrides the
  1398.               the size constraints.
  1399.  
  1400.       Rounding mode for floating-point constant folding:
  1401.     -yd    Disables floating-point constant folding.
  1402.     -ym    Rounds towards negative infinity.
  1403.     -yn    Rounds to nearest whole number.  This is the default
  1404.             action when the -y flags is specified without an argument.
  1405.         The specified rouding applies to constant folding in all
  1406.         applicable passes of the compiler.
  1407.     -yp    Rounds towards positive infinity.
  1408.     -yz    Rounds towards zero.
  1409.  
  1410.         -z    Use the libm.a version of the following transcendental
  1411.         functions, instad of calls to the AIX kernel, or AFPA.
  1412.         acos, asin, atan, atan2, cos, exp, log, log10,
  1413.         sin, sqrt, tan.
  1414.  
  1415.       Programs requiring curses and/or termcap emulation need to
  1416.       add the -lcurses flag to their link step.
  1417.  
  1418.       Due to the work of several people the GCC compiler has finally
  1419.       been ported to AIX/RT.  See section P.xx for porting notes for
  1420.       the compiler, and information on using that compiler.
  1421.  
  1422. ------------------------------
  1423. S.13 - How to managage serial ports.
  1424.  
  1425.       NOTE: Printer/plotter serial devices are automatically defined
  1426.     with port and speed parameters when adding that device type
  1427.     under the printers menu.  For more information about adding
  1428.         printers see sections H.14 and S.28. The following is for
  1429.         terminal, modem and other serial device types.
  1430.  
  1431.       The devices command is used to add, change and delete serial port
  1432.       settings, and how the getty will operate with that serial port.
  1433.  
  1434.       The devices command will automaticlly detect any attached serial port
  1435.       hardware and present them in the "Following adapters are available" menu.
  1436.  
  1437.         devices 
  1438.           add
  1439.            ttydev
  1440.              tty
  1441.                <..Following adapters available menu displayed> 
  1442.                  < a new panel comes up showing terminal type>
  1443.     
  1444.       Most serial ports will need other information such as speed,
  1445.       parity, and stop bit settings, but this first panel presented does
  1446.       not have them.  Fill in the displayed settings with your requirements
  1447.       as show on this menu.  Some common options:
  1448.  
  1449.          'ae' = true (meaning enable always, more on this later).
  1450.          davm = 1  (1=modem, 0=direct attached)
  1451.          tt   = to any string matching /usr/lib/terminfo available terminal 
  1452.                 type most likely to call your system.
  1453.         If unknown, set it to 'dumb'.
  1454.  
  1455.       The critical part of this panel is the 'ae' option.   Set it to 'true'
  1456.       (meaning 'enable') for a dial-in only port.  A getty task will be
  1457.       started continually waiting for logins.  When 'ae' is set to 'share'
  1458.       or 'delay' the getty operation is altered for bi-directional (call-in
  1459.       and call-out), operation.  By using 'delay' this will setup the getty
  1460.       to run similar what other UNIX systems call a 'uugetty'. 
  1461.       With 'ae' set to 'false' no getty will be started for this serial port,
  1462.       and it may be used directly by application programs for I/O purposes.
  1463.       Application programs or system functions (cu, ate, uucico, ect..) may
  1464.       use the serial port without at anytime.
  1465.    
  1466.       Press enter to bring up a yes/no question about changing more
  1467.       options.. enter 'yes'.
  1468.   
  1469.       A Larger panel will appear allowing you to choose the baud rate, and
  1470.       other serial settings, such as stop bits, xon/xoff and other 
  1471.       common selections for serial ports.
  1472.       Some common options for attaching a modem:
  1473.           bpc  =  bits per character
  1474.           rts  =  speed of the port
  1475.           sns  =  false  (switched or dial-in port)
  1476.           aa   =  true   (auto answer)
  1477.           pt   =  parity type (odd,even,none,mark,space)
  1478.           nosb =  number of stop bits.
  1479.  
  1480.       Default any options you don't clearly understand.
  1481.  
  1482.       The devices command will change the system so that the getty for the
  1483.       port will be started each time the system is booted.  To change the
  1484.       status of the getty while booted and only for the current life of
  1485.       this IPL, use the pstart, pdisable, penable or pdelay commands to
  1486.       change the port status to the desired state. Issuing the 'pstart'
  1487.       command with no options will display all current tty port status.
  1488.  
  1489.         *  penable  - causes the getty to run all the time, and it will
  1490.            present a login banner when the port detects carrier, and
  1491.            modem ready.  The 'penable' command also keeps the port locked
  1492.            all the time.  This command changes the port operation to be the
  1493.            same as the options devices panel 'ae' set to 'true'.
  1494.  
  1495.         *  pdelay  - causes the getty to raise DTR, and wait for carrier
  1496.            before presenting the login herald, AND to WAIT to 'lock' the
  1497.            port from other users (if necessary) UNTIL some characters are
  1498.            actually recived on the port. Some systems call this a 'uugetty'.
  1499.        This command changes the port operation to be the same as the
  1500.            devices panel 'ae' set to 'delay'.
  1501.  
  1502.         *  pshare  - is similar to pdelay, but it locks the port immediately
  1503.            on recipt of carrier. (least useful of the options)
  1504.        Same as the devices panel 'ae' set to 'share'.
  1505.  
  1506.         *  pdisable - causes the getty to be halted for this port, freeing 
  1507.            the port for usage by other programs.  DTR will be dropped,
  1508.            and if a modem is attached and configured correcty, will hang up
  1509.            any user dialed in, and prevent the modem from answering the line.
  1510.        Same as the devices panel 'ae' set to 'false'.
  1511.            To stop ALL tty ports at once, use 'pdisable -a'.
  1512.  
  1513.       NOTE: A few notes on the 'pro' (protocol) parameter on the devices menu.
  1514.             Protocol has three diffent settings:
  1515.               cdstl  = Connect Data Set To Line.
  1516.                        [ I have not figured out what this one does - MW ]
  1517.               dc     = Direct Connect = CTS lead examined for pacing 
  1518.                        (on the RT native port, Pin #8).
  1519.               dtr    = Data Termnal Ready = DTR lead examined for pacing
  1520.                        (on the RT native port, Pin #2).
  1521.  
  1522.             Depending on the cable attached, the 'pro' keyword can
  1523.             have a radically different meaning.  For the modem cable,
  1524.             and to use 'hardware' handskake instead of xon/xoff set the
  1525.             'protocol' to 'dc' and 'ixp' to 'false' on the devices port panel.
  1526.             That cable has the CTS lead conneted to the CTS pin on the
  1527.             25 pin modem side of the cable. This will utilize RTS/CTS pacing.
  1528.  
  1529.             When using the serial printer cable, the CTS pin on the RT side
  1530.             is connected to 'DTR' on the printer.  Some printers use the
  1531.             DTR lead to control hardware pacing, and if so, you should have
  1532.             'pro = dc' for this to work correctly, instead of 'pro = dtr'.
  1533.             [Confusing, yes? - MW]
  1534.  
  1535.       Unique to AIX/RT is the '/etc/ports' file.  Entries in this
  1536.       file control various aspects of serial ports.  This file is
  1537.       a stanza format file.  There is one stanza for each device 
  1538.       port, and two special stanzas 'default' containing defaults for
  1539.       all ports, and 'console' meaning the system hft console.
  1540.       The file has the following format:
  1541.  
  1542.           device:
  1543.                option = value
  1544.  
  1545.       The following options can be of assitance with UUCP setup
  1546.         lock=          true.  This stanza is CRITICAL for a shared
  1547.                            dial-in/dial-out bi-directional use port.  
  1548.                            No command adds this stanza, and it is not
  1549.                            added by default, but without it, port locking
  1550.                            will not be handled coorecty amoung the
  1551.                            getty,cu,ate and uucico programs.
  1552.             enabled =      Set by devices to the value of the 'ae' field.
  1553.                            values: true, delay, share, or false. Corresponding
  1554.                            to penable, pdelay, pshare or pdisable.
  1555.             speed=         Initial port speed.  Not documented is the fact
  1556.                            that a comma delimited list of speeds is availabe
  1557.                            and that getty will rotate thru the list presenting
  1558.                            the hearald in the specified speed on recipt of 
  1559.                            a 'break' signal.
  1560.         parity=        parity to use, set by devices command,
  1561.                            values: odd,even,none,mark and space.  Can also
  1562.                            be a comma delimited list like 'speed' above.
  1563.            
  1564.             hearld=        The chracter string presented by the getty for
  1565.                            a login greeting.
  1566.         term=          Sets the string that the TERM envionment variable
  1567.                            will be set to upon successful login.
  1568.         logmodes=      Port characteristics during login processing.
  1569.         runmodes=      Port characteristics set after login complete.
  1570.  
  1571.    Here is an example Telebit trailblazer T1600 setup that seems to work
  1572.    with the RT UUCP, using hardware flow control. 
  1573.    
  1574.    ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==
  1575.    Submitter: herb@ajfcal.UUCP    
  1576.    Date: 21 May 91 13:40:50 GMT
  1577.  
  1578.    [ initial netnews discussion on UUCP troubles deleted - MW ]
  1579.    Sounds like you're having flow control problems... I just overcame
  1580.    the same thing when I upgraded the OS on my RT.. (CorrSrvc 1773).
  1581.    I just couldn't get hardware flow control working to save my life
  1582.    but this weekend I sat down for a couple of hours and got it working
  1583.    with my "DCA Fastlink" (Trailblazer Clone).
  1584.  
  1585.    In "devices", I have:
  1586.     pro dc
  1587.     ixp false
  1588.     dvam 0       [ I think he would have less trouble with dvam=1 - MW ]
  1589.     sns false
  1590.     aa false
  1591.  
  1592.    and in the telebit, I have:
  1593.  
  1594.    E0 F1 M0 Q1 T V1 X3     Version AA3.00-AB3.00
  1595.    S00=001 S01=000 S02=043 S03=013 S04=010 S05=008 S06=002 S07=060 S08=002
  1596.    S09=006 S10=007 S11=070 S12=050 
  1597.    S45=000 S47=004 S48=001 S49=000
  1598.    S50=000 S51=005 S52=002 S53=001 S54=003 S55=003 S56=017 S57=019 S58=002
  1599.    S59=000 S60=000 S61=099 S62=003 S63=001 S64=000 S65=000 S66=001 S67=000
  1600.    S68=002 S90=000 S91=000 S92=000 S95=000 
  1601.    S100=000 S101=000 S102=000 S104=000 
  1602.    S110=255 S111=255 S112=001 
  1603.    S121=000 
  1604.   
  1605.    Other Pertinent information: 6150-25, IBM 4 port async, and standard
  1606.    IBM Modem cable.
  1607.  
  1608.    There's still a problem with Carrier Detect and getty... It seemed to
  1609.    a choice between having hardware flow control or having getty work
  1610.    right...  But if you're using it to dial out only, then you shouldn't
  1611.    have to worry about that...  
  1612.    ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==
  1613.  
  1614. ------------------------------
  1615. S.14 - How to add user accounts to AIX V2.
  1616.       Also covers the various /etc/security stanza file contents.
  1617.  
  1618.       To create or update a group or a user, you must have superuser
  1619.       authority. Use the "users" or "addusers" command.
  1620.       Example:
  1621.          # users
  1622.          > a g groupname          add a group
  1623.          > c g groupname          change a group
  1624.          > a u username           add a user
  1625.          > c u username           change a user
  1626.          > ?                      help
  1627.          > q                      quit
  1628.  
  1629.       The AIX/RT system uses a secondary security system similar to
  1630.       some systems with a shadow password file.  The /etc/passwd file
  1631.       and /etc/group files do not contain the actual password.  Instead an
  1632.       explanation mark (!) is used as a place holder indicating that the
  1633.       password is located in the /etc/security directory in the file of
  1634.       the same name. 
  1635.  
  1636.       WARNING: At some update levels of AIX/RT, the 'sysck' command,
  1637.          called by the 'adduser' command can cause password file corruption
  1638.          if any of the files have been edited by hand.  The sysck comand
  1639.          is supposed to verify that the date/time stamps on on the
  1640.          /etc/passwd and /etc/security/passwd files match and that the
  1641.          internal stanzas are matching between the various files in
  1642.          the /etc/security directory.  The sysck command attempts to
  1643.          modify the /etc/security/passwd file to correct any tampering. 
  1644.          This modification can cause corruption of the /etc/security
  1645.          stanzas can make your system unable to be logged into. 
  1646.          Systems earlier than 2704 do not have the problem, and 
  1647.          systems with 2706 on or later do not have the problem.
  1648.  
  1649.       An AIX/RT password entry can have the following parts:
  1650.  
  1651.          george:!:200:1:User George/600000;description:/u/george:/bin/sh
  1652.          ^      ^ ^   ^ ^           ^      ^            ^        ^
  1653.          A      B C   D E           F      G            H        I
  1654.  
  1655.       Description:
  1656.          A - Username
  1657.          B - Password place holder.  An asterix (*) will make the password
  1658.              invalid.  If null, no password is assigned, but the 'sysck'
  1659.              program will not allow this.  See the /etc/security/passwd
  1660.              file description for more information.
  1661.          C - User id number. Numbers below 100 are reserved for system use.
  1662.              User account numbers below 20 are privlidged users, and are
  1663.              allowed logins at any time regardless of system load, maxusers,
  1664.              or other system restrictions.
  1665.          D - Group number.
  1666.          E - Name field
  1667.          F - Optional ulimit size (update level 2704 or greater) 
  1668.              from the 'filesize' adduser field.
  1669.              Maximum user file size in 512 byte blocks.  If this field is
  1670.              omitted, the preceeding slash (/) must be omitted.
  1671.          G - Siteinfo field contents. NOTE: A colon in this field is NOT
  1672.              allowed.  If this field is omitted the preceeding semicolon (;)
  1673.              must also be omitted.
  1674.          H - Home directory.  As installed AIX defaults the home directory
  1675.              to the /u filesystem.  Any valid filesystem may be used for
  1676.              home directories.
  1677.          I - Initial program to execute.  Maximum size 4096 characters and
  1678.              14 parameters.
  1679.  
  1680.       The /etc/security directory contains several stanza files that 
  1681.       further control the user login process.
  1682.  
  1683.             audit       - directory containing audit subsystem control files.
  1684.             config      - stanza file to control login operations.
  1685.             group       - current shadow group file.
  1686.             ogroup      - backup copy of shadow group file created by 
  1687.                           the adduser command before the last change.
  1688.             grpchk      - executable program to verify group file.
  1689.             passwd      - current shadow password file. 
  1690.             opasswd     - backup copy of shadow passwd file created by
  1691.                           the adduser command before the last change.
  1692.             pwdchk      - executable program to verify password file.
  1693.             sysck.cfg   - configuration file for the sysck command.
  1694.            
  1695.       The /etc/security/passwd file is a stanza form file with one
  1696.       stanza for each user.  An example is like this:
  1697.  
  1698.             guest:
  1699.                 password = *
  1700.                 restrictions = nologin
  1701.             
  1702.             george:
  1703.                 password = xxyy123456789
  1704.                 lastupdate = 733115124
  1705.             
  1706.    Valid stanza fields are:
  1707.        password=      The users encrypted password.  If field is missing or
  1708.                       NULL, the account has no password.
  1709.  
  1710.        lastupdate=    The date on which the user last changed the password.
  1711.                       The value is expressed as the number of seconds since
  1712.                       the epoch (Jan 1, 1970).
  1713.                       Note: If password ageing is in use, setting this field
  1714.                             to zero forces a password change immediately on
  1715.                             next user login.
  1716.  
  1717.        restrictions=  The restrictions stanza controls how the account will
  1718.                       be handled.  One benefit of account control allows you
  1719.                       to leave the password unchanged for an account, yet
  1720.                       still prohibit its use.  Valid values are:
  1721.  
  1722.                       nologin - Disallow login processing for this account
  1723.                                 (telnet and rlogin will not work).
  1724.                                 An illegal password entry of '*' also makes
  1725.                                 it impossible to login.  However, remote
  1726.                                 shell 'rsh' is still allowed and 'su - userid'
  1727.                                 is still allowed.
  1728.                       nouse   - Account is completely disabled.
  1729.                                 All login and use of the account is blocked,
  1730.                                 including 'su' and 'cron'.
  1731.                       nopw    - account is exempt from password ageing.
  1732.                       notsh   - Trusted shell use is not allowed.
  1733.  
  1734.                       These may be combined such as "nologin,nopw".
  1735.  
  1736.        auditclasses=  This entry is used with the audit subsystem, and
  1737.                       is the initial audit class for this user.  The 'audit'
  1738.                       command updates this field.
  1739.  
  1740.       The /etc/security/config file is a stanza form file with one
  1741.       stanza for different elements of AIX/RT security.
  1742.  
  1743.       One of the 'config' stanzas control password usage and aging.
  1744.  
  1745.            password:
  1746.                maxage = 0
  1747.                minage = 0
  1748.                minalpha = 0
  1749.                minother = 0
  1750.                mindiff = 0
  1751.                maxrepeat = 8
  1752.  
  1753.        Valid config entry 'password' stanza fields are:
  1754.        maxage=      Maximum age in weeks of a valid password.
  1755.        minage=      mininum age in weeks, before a change of a password
  1756.                     is allowed.
  1757.                     NOTE: password CANNOT be changed until minage is reached
  1758.                           if it is non-zero.
  1759.        minalpha=    Minimum number of alphabetic characters in a password.
  1760.        minother=    Maximum number of numeric or special characters in password.
  1761.        mindiff=     Minimum number of characters to be different from the
  1762.                     old password.
  1763.        maxrepeat=   Maximum number of identical consecutive characters to
  1764.                     allow in a valid password.
  1765.     
  1766. ------------------------------
  1767. S.15 - 6157 1/4" tape drive special file names.
  1768.  
  1769.     Due to the hardware design of the standard 6157 tape adapter, only
  1770.     one adapter can been installed in one RT system.  However..
  1771.     that one drive has 4 different device names:
  1772.  
  1773.     /dev/rmt0    normal tape device name, rewind on close.
  1774.     /dev/rmt4    NO rewind on close.
  1775.     /dev/rmt8    retension tape on open and rewind on close.
  1776.     /dev/rmt12    retension tape on open, NO rewind on close.
  1777.  
  1778.     Note: If the NO rewind device name is used with read, after an 
  1779.           open completes, AND an application starts reading, the tape
  1780.           will be positioned to the EOT side of the next filemark by
  1781.       close processing.
  1782.  
  1783. ------------------------------
  1784. S.16 - UUCP setup and management.
  1785.  
  1786.    The AIX/RT system uses the HoneyDanBer variation of UUCP, or BNU
  1787.    (Basic Networking Utility) as the facility is called.  IBM has made
  1788.    very little change of the BNU facility, however, the way that AIX/RT
  1789.    controls serial ports requires a few changes.
  1790.   
  1791.    The suporting IBM documentation is located in the "Managing the AIX
  1792.    Operating System" manual number SC23-2008, Chapter 9. 
  1793.  
  1794.    An excelent reference book is the "Managing UUCP and Usenet" book
  1795.    by O'Reilly & Associates ISBN 0-937175-93-5.   This book is an excelent
  1796.    UUCP reference, but AIX/RT requires a few special notes:
  1797.  
  1798.       1) All the control files for BNU are located in '/usr/adm/uucp'
  1799.          instead of the '/usr/lib/uucp' or '/etc/uucp' directories.
  1800.  
  1801.       2) Login accounts created for UUCP should be in group 'uucp'.
  1802.          I like to use uid numbers between 100 and 199 for uucp use.
  1803.          (Uids over 200 normally start the standard user range of uids).
  1804.          The gid 5 is the uucp group, and the accounts should be in that group.
  1805.  
  1806.       3) Port AND getty control is done via the 'devices' command,
  1807.          or the port control commands 'pstart,pdelay,pshare,pdisable 
  1808.          and penable'. See section S.13 on serial port managment.
  1809.          There is no '/etc/inittab' (as SYSV) or '/etc/ttys' (BSD/Xenix),
  1810.          or '/etc/gettytab' (SunOS).  AIX/RT has a unique file called
  1811.          '/etc/ports'.  That file is discssed in more detail below.
  1812.  
  1813.       4) Serial devices have two names for each port that are quite 
  1814.          helpful, for example the first serial port is called tty0,
  1815.          and has the following device special files:
  1816.  
  1817.             /dev/tty0    -  standard port, and open blocks until carrier
  1818.                             detect is true.
  1819.             /dev/ltty0   -  Has the equivlent of 'clocal' set and allows
  1820.                             open to complete without carrier.
  1821.  
  1822.          When setting up the 'Devices' control file, use the /dev/ltty#
  1823.          entry so that uucico can open the port and be able to send dial
  1824.          string characters.  This is critical, as the modem MUST be setup
  1825.          to only have CD (Carrier Detect) true only when a real carrier is
  1826.          detected from the remote end.  Most hayes compatible modems when
  1827.          shipped from the factory have CD forced true at all times.  This
  1828.          is trouble for uucico, as it cannot detect when a session has
  1829.          failed, and when to hangup.
  1830.  
  1831.       5) To use the RT to program a modem soft switches, add the tty device
  1832.          with the modems default port speed and parity, ect...
  1833.          Edit the /usr/adm/uucp/Devices file and uncomment or add an
  1834.          entry called 'Direct'. 
  1835.                # ---A direct line so 'cu -ltty0' will work
  1836.                # Direct tty0 - 9600 direct
  1837.                Direct ltty0 - 2400 direct
  1838.  
  1839.          Then use 'cu -l ltty0' to connect using the cu command.  You can
  1840.          now use cu to use the various 'AT' commands of the modems to 
  1841.          program the modem.
  1842.         
  1843.          As different modems use different soft register values, be sure
  1844.          to check your modem documentation for the proper values to use.
  1845.          These register settings described below are for an ATI2400e modem
  1846.          your modem should have equivlent settings for these functions. 
  1847.          Some the common settings needed are:
  1848.               S0=1   Number of rings to answer.. (If call out only, you
  1849.                       can leave this to zero to never answer the phone.)
  1850.               &E0    Echo off in command mode. NOTE: This will make command
  1851.                      strings typed with cu not to be echoed back by the
  1852.                      local modem. Use the cu flag '-h' to turn on programmed
  1853.                      echo (half-duplex).
  1854.               &C0    Carrier follows true carrier.
  1855.  
  1856.       6) See section S.13 for general serial port control and setup.  See
  1857.          also Q.8 and Q.9 in the Questions section on additional notes on
  1858.          speed settings and bi-directional ports. 
  1859.  
  1860.          The following /etc/ports options can be of assitance with getting
  1861.          UUCP setup and operating correctly:
  1862.         lock=          You MUST add 'lock=true'.  This stanza is CRITICAL
  1863.                            for a shared dial-in/dial-out bi-directional use
  1864.                            port.  No command adds this stanza, and it is not
  1865.                            added by default, but without it, port locking
  1866.                            will not be handled correctly amoung the
  1867.                            getty, login, cu, ct and uucico programs.
  1868.                            NOTE: The 'ate' command regardless of update level
  1869.                            still does not understand shared use ports.  You
  1870.                            MUST pdisable the port prior to using ate.
  1871.             enabled=       Set by devices to the value of the 'ae' field.
  1872.                            values: true, delay, share, or false. Corresponding
  1873.                            to penable, pdelay, pshare or pdisable.
  1874.             hearld=        You will most likely want to add this entry to
  1875.                            shorten the login prompt.  The default stanza has
  1876.                            a long string of newline characters, and this can
  1877.                            confuse some uucico chat scripts. 
  1878.    
  1879. ------------------------------
  1880. S.17 - Setting up networking on an RT running AIX V2.
  1881.  
  1882.       General steps needed:
  1883.          - If not installed, install TCP/IP portion of OS.
  1884.          - Install any VRM driver(s) needed.
  1885.          - Add hardware adapter (token-ring, ethernet, X.25) to system.
  1886.          - Define adapter to system with devices.
  1887.          - Edit /etc/net to set IP address and interface characteristics.
  1888.          - Edit /etc/hosts to set hostname to IP address association,
  1889.            and if needed, domain name server address(s).
  1890.          - Edit the /etc/rc.tcpip file for full system domain name (if needed),
  1891.            and if necessary, static routes.  Uncomment needed services.
  1892.          - Uncomment the startup of interfaces and networking line in the
  1893.            file '/etc/rc.include' file.
  1894.          
  1895. ------------------------------
  1896. S.18 - How to set up SLIP - TCP/IP over serial lines.
  1897.  
  1898.      Open for adoption and filling in.
  1899.  
  1900. ------------------------------
  1901. S.19 - Configuring NFS on AIX V2.
  1902.       - Different versions of NFS for AIX V2.
  1903.       - Known unfixed problems with NFS 1.1 on AIX V2.
  1904.       - Known unfixed problems with NFS 1.2 on AIX V2.
  1905.  
  1906.      Coming soon ??????
  1907.  
  1908. ------------------------------
  1909. S.20 - Known outstanding problems with AIX V2, unfixed by IBM.
  1910.  
  1911.    Even with the final update disks applied to the AIX 2.2.1 system
  1912.    there are some unfortunate bugs still lurking.  Some can be corrected
  1913.    by replacing the offending code with Public Domain replacements.
  1914.    Others will require more work for repair.
  1915.  
  1916.    * Opsys:
  1917.      - ate command will not work on bi-directional ports.  Port must be
  1918.        in a disabled state for it to open the serial port.
  1919.      - syslog function call will not format variable parameters for more
  1920.        than three variables.
  1921.    * TCP/IP:
  1922.      - named daemon is very old, based on BIND vX.X.
  1923.      - With 'telnet' terminal type negoation is not always correct
  1924.        after update 1773.  1779 corrects some of the problems, but not all.
  1925.  
  1926.     [ This section, unfortunately, will need some expansion.  Report your
  1927.       bugs to me, and I'll see they get added to this list. -MW ]
  1928.  
  1929. ------------------------------
  1930. S.21  What Non-IBM software was available.
  1931.  
  1932.    * Applix IA.
  1933.    * Dyalog/APL.
  1934.    * Interactive Systems INmail/INnet/FTP
  1935.    * Interleaf Inc. Workstation Publishing system.
  1936.    * INGRES DBMS
  1937.    * Oracle DBMS
  1938.    * RM/COBOL 
  1939.    * RS/1
  1940.    * Rabbit Systems NETWORK 3270-PLUS, and RJE-PLUS.
  1941.    * Samna+
  1942.    * Solomon Sstems SOLOMON III Accounting package.
  1943.    * SQL/RT
  1944.    * Sytos/6157 Tape Utilities.
  1945.    * UNIRAS
  1946.    * WordPerfect V4.2.
  1947.  
  1948.      [ If anybody has information on software vendors still activly 
  1949.           selling or supporting their RT software I would like to expand
  1950.       this section with that information. Phone numbers or
  1951.           mail/E-mail addresses of companies. - MW ]
  1952.  
  1953. ------------------------------
  1954. S.22 - Setting up and using the PC Simulator.
  1955.  
  1956.   * Getting DOS/pcsim ready:
  1957.        1. Use the "installp" program to install the pcsim LPP.
  1958.           For AIX 2.2.1, only the latest release level of pcsim 1.1.1
  1959.           will function correctly.
  1960.  
  1961.        2. Prepare the DOS 3.1 diskettes and one empty diskette (1.2 MB)
  1962.           IBM PC-DOS 3.3 will also work.
  1963.  
  1964.        3. Create the working environment:
  1965.            - Create a simulator user (ex. simuser)  Or use an existing
  1966.              non-root userid.
  1967.  
  1968.        4. Customize the simulator:
  1969.            - login as simuser
  1970.            - create a file to be used a the 'C:' drive by PC DOS:
  1971.              touch cdrive
  1972.            - type: pcsim
  1973.            - fill out the selection menu
  1974.              Make the 'PC virtual hard disk point to that created file
  1975.              called 'cdrive'. 
  1976.            - save your customization
  1977.        
  1978.        5. Start the simulator:
  1979.            - put the DOS Start diskette in the top floppy drive.  This is
  1980.              drive 'A:' to the simulator by default.
  1981.            - select START on the pcsim menu
  1982.              PC DOS will be loaded from the floppy at this point.  If the
  1983.              boot fails, in true IBM PC flavor, you will be dropped into
  1984.              the 'ROM' basic.
  1985.            - If all goes well, the PC DOS prompt A> appears.
  1986.        
  1987.        6. Install DOS on the simulated hard disk:
  1988.            - type FDISK to create a DOS partition.
  1989.            - type FORMAT C:/S to format the DOS partition
  1990.            - use the SELECT command to customize DOS
  1991.              (for Germany: select 049 gr)
  1992.              This step will require the empty diskette.
  1993.            - create the DOS library (C: MKDIR DOS)
  1994.            - copy the DOS diskette on the disk: copy a:*.* c:\DOS
  1995.        
  1996.        7. Reboot DOS from 'PC' virtual hard disk:
  1997.            - remove any diskette from the diskette-drive
  1998.            - reboot pcsim with <ctl>-<(right)alt>-<del>
  1999.  
  2000.     NOTE: if you use a color display, make sure to define a BLACK
  2001.     background and a white foreground, and you won't have color problems!
  2002.  
  2003.   * Simulator devices
  2004.        The PC Simulator supports:
  2005.           - CGA, EGA and APA displays (incl. megapel)
  2006.           - the serial ports
  2007.  
  2008.     There are two main rules to follow in dealing with simulator
  2009.     devices which are not supported by AIX:
  2010.  
  2011.       1. The Simulator cannot support devices that share interrupt levels.
  2012.       2. The Simulator does not support devices that use alternate DMA.
  2013.  
  2014.   * Simulator applications
  2015.      The following is a short list of applications that have been tested
  2016.      by IBM at the release of the simulator product.
  2017.      [This was collected from some ORIGINAL IBM documentation, some 
  2018.       of this information is now very out of date. - MW ]
  2019.  
  2020.         IBM DOS 3.3
  2021.         IBM Displaywrite 4 Version 1.02
  2022.         IBM Storyboard Plus Version 1.01, Update 01
  2023.         dBase III Plus Version 1.1
  2024.         Chartmaster Version 6.21
  2025.         PFS: First Choice Version 2.01
  2026.         Wordperfect Version 4.2
  2027.         Lotus 1-2-3 Version 2.01
  2028.         Microsoft Windows Version 2.03
  2029.         Flight Simulator Version 2.0
  2030.  
  2031.   * Defining an adapter to AIX and PCSIM
  2032.  
  2033.       Allocating an adapter to the Simulator is a three step process:
  2034.         - You define it to AIX using devices by adding a device of
  2035.           type 'simdev', say simdev0.
  2036.         - You define it to PCSIM using the simdev command. For example,
  2037.           'simdev -a simdev0'.
  2038.         - You ALLOCATE the device to a session using the -adev0 flag
  2039.           from the command line when you start the Simulator or by
  2040.           selecting dev0 from the list of devices you may allocate from
  2041.           the menu.
  2042.  
  2043.     You will need to select a display for the Simulator to use in
  2044.     addition to your allocated adapter. This is because the Simulator
  2045.     needs to create a process to receive keystrokes.
  2046.  
  2047.     Only the later version 1.1.1 of the simulator supports an X-window
  2048.     as a simulator display.
  2049.  
  2050.     You will need PC software that knows to drive that display adapter.
  2051.  
  2052.     Note: To verify that the adapter has been properly defined and allocated
  2053.           you can use DEBUG to display adapter memory. For example:
  2054.              C>DEBUG
  2055.              -d c600:0
  2056.              C600:0000  FF FF FF FF ...
  2057.  
  2058.    Define the adapter as described above and allocate it.
  2059.    If the RT does not have the adapter present, you get a series of 'FF'
  2060.    values when DEBUG reads from the I/O bus. When the adapter is present,
  2061.    DEBUG would read whatever is in the video buffer on the adapter.
  2062.  
  2063.    NOTE: The Simulator maps PC segment registers either entirely to the
  2064.    I/O Bus or entirely to virtual memory on the RT. If you ask
  2065.    DEBUG to display from segment C5FF (d c5ff:0) you will get a
  2066.    series of zeroes like '00 00 00 00 ...' and NOT what is on the
  2067.    adapter. This means that PC software that reads or writes to
  2068.    an allocated adapter must load a segment register with a value
  2069.    in the range of the adapter (and not with a lower value expecting
  2070.    to use a larger offset to get into the adapter memory).
  2071.  
  2072. ------------------------------
  2073. S.23 - Features of the AIX bourne shell.
  2074.  
  2075.   * Path resolution function
  2076.      The AIX Bourne shell has a builtin command called "type" which returns
  2077.      the complete path of the evoked AIX function.
  2078.  
  2079.         Example: "type ls" -> "ls is /bin/ls"
  2080.  
  2081.   * Use of the HFT console command editing keys can make the bourne shell
  2082.     easier to use.
  2083.  
  2084.      Use the command 'stty enhedit' to turn on the enhanced edit functions
  2085.      of the hft console.  With this enabled, the cursor keys and
  2086.      function keys F1 thru F3 perform command recall functions and
  2087.      command line editing.
  2088.         The function keys perform similar to the IBM PC DOS command
  2089.         editing keys:
  2090.         F1 - copy one character at a time from the last command buffer.
  2091.         F2 - Search for the character in the command line that is      
  2092.              pressed immediately after the F2 key.
  2093.         F3 - copy command buffer to end of line.
  2094.         delete - delete character out of the enhanced buffer, shifting 
  2095.                  the command line one character to the left from the
  2096.                  current cursor position, until end of line.
  2097.         insert - turn on insert mode on the command buffer
  2098.         up arrow, down arrow  - scroll forward or backward thru the
  2099.                command buffer.
  2100.         right arrow - functions like F1 key, copies on character at a time.
  2101.  
  2102.      NOTE: If you use the RT Graphics Development Toolkit
  2103.            "stty enhedit" interferes with the way VDI does mouse input.
  2104.            You should then use "stty -enhedit" to de-activate the enhanced
  2105.            editing functions.
  2106.  
  2107. ------------------------------
  2108. S.24 - Floppy disk drive special file names.
  2109.  
  2110.       The floppy disk driver will attempt to discover what format the
  2111.       diskette is in when reading.  When writing however, you must use
  2112.       a matching device special file, or I/O errors will result.
  2113.  
  2114.       name          sect   trks  sides  size   description 
  2115.       /dev/rfd#       15    80     2    1.2Mb  Normal High density
  2116.       /dev/rfd#.9      9    40     2    360Kb  Double side, double density
  2117.       /dev/rfd#.8      8    40     2    320Kb  Double side original PC
  2118.       /dev/rfs#.9      9    40     1    180Kb  Single side, single density
  2119.       /dev/rfs#.8      8    40     1    120Kb  Single side, original PC 64K
  2120.  
  2121. ------------------------------
  2122. S.25 - Minidisk usage notes.
  2123.  
  2124.    * The number of minidisks is limited as follows:
  2125.            max 64 minidisks per system
  2126.            max 47 minidisks per disk unit
  2127.  
  2128.    * You can use the VRM Maintenance Facility (VMF) to repair a varity of 
  2129.      minidisk problems.  It is described in the "AIX Problem Determination
  2130.      Guide", appendix A.
  2131.  
  2132.    * If you have a minidisk that is on a disk that is a duplicate IODN number
  2133.      the system will have problems determining which minidisk to use.
  2134.  
  2135.      To delete such a minidisk with VRM, do the following:
  2136.  
  2137.         - Boot with the VRM diskette.
  2138.         - Take the option of the maintenance menu.
  2139.         - Use the "qi" command and note the IODN of the minidisk, AND the
  2140.           drive number, of which you want to delete.
  2141.         - type "dlmd <iodn> <drive>" 
  2142.            where <iodn> is the concerned IODN number.
  2143.            and <drive> is the assocaited drive number. (1 thru 3)
  2144.         - hit <F1>
  2145.         - type "quit"
  2146.  
  2147. ------------------------------
  2148. S.26 - How to add more pagespace and virtual memory.
  2149.        Pagespace notes and a program to display usage.
  2150.  
  2151.      Using the VMF utilities (option 7 from the VRM install diskette's menu),
  2152.      you can create additional minidisks and give them the "page space"
  2153.      attribute.  This results in multiple paging space minidisks.
  2154.      This is a simple way to increase paging space, and potentially can
  2155.      help performance by splitting the paging I/O onto different controllers.
  2156.      
  2157.      NOTE: Pagespace minidisks cannot be on SCSI disks, as the SCSI drivers
  2158.      are not loaded unitl after AIX is started.  As paging is performed
  2159.      by VRM, all pagespace minidisks MUST be on the ESDI controllers, and
  2160.      available at VRM boot time.
  2161.  
  2162.      WARNING: The location of the FIRST paging space minidisk is an attribute
  2163.      set by VRM installation, and recorded in the VRM internals. Deleting
  2164.      or moving this minidisk and recreating it on another drive will cause a
  2165.      system abort at IPL time with a flashing c6-05.
  2166.  
  2167.    ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==
  2168.  
  2169.    Here is a program I had in my archives that will display page space 
  2170.    information and disk I/O statistics.  I compiled this as 'lsvm' lsvm.c
  2171.  
  2172. main()
  2173. {
  2174. volatile int *pages     = (int *) 0xb8;  /* page slots unallocated */
  2175. volatile int *repcycles = (int *) 0xbc;  /* page replacement cycles */
  2176. volatile int *iowaits   = (int *) 0xc0;  /* VM I/O waits            */
  2177. volatile int *diskio    = (int *) 0xc4;  /* all non-paging disk I/O's   */
  2178.  
  2179.  printf(" %d = page slots unallocated\n",*pages);
  2180.  printf(" %d = page replacement cycles\n",*repcycles);
  2181.  printf(" %d = VM I/O waits\n",*iowaits);
  2182.  printf(" %d = all non-paging disk I/O's\n",*diskio);
  2183. }
  2184.  
  2185.    ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==
  2186.    Submitter: moody@austin.ibm.com
  2187.    Subject: Re: Problems with swap space??
  2188.    Summary: solution to avoid system crashes when your application runs.
  2189.    Date: 27 Feb 90 22:19:01 GMT
  2190.    Organization: IBM AWD, Austin, TX
  2191.  
  2192.    In article <728@duteca4.UUCP> mars@duteca.tudelft.nl () writes:
  2193.    [much of article deleted]
  2194.    >It seems to me that the problem is caused by a problem with the swap space,
  2195.    >so I tried the program on the other RTs and it appeared that the same
  2196.    >problem occured (although at least one of them didn't crash until at least
  2197.    >one other extra application was running). I also tried the program on a
  2198.    >SUN, but couldn't crash it.
  2199.    >
  2200.    >Maybe a larger swap space is the solution, but
  2201.  
  2202.    A larger swap space is the ultimate solution.
  2203.  
  2204.    >error message could be expected when too much memory has been allocated.
  2205.  
  2206.    AIX version 2 on the RT uses a delayed allocation scheme for
  2207.    allocating paging slots to an application.  This may result in an
  2208.    overcommitting of the page space on the RT for some applications which
  2209.    use a lot of memory on a system with a small paging space.  One of our
  2210.    vendors was the first we knew of to have the problem and I developed a
  2211.    solution for them.  This solution is an easy way for developers to
  2212.    port these large, memory consuming apps.  Applicationss originally
  2213.    written for BSD systems seem to have this problem more often since BSD
  2214.    does things differently.
  2215.    
  2216.    The following program fragment is my solution.
  2217.  
  2218. /* ----------------------- cut here --------------------------------*/
  2219.  
  2220. #define PAGESIZE 2048
  2221. #define NULL 0
  2222. #include <sys/signal.h>
  2223. volatile int dangerflag;
  2224. void free();
  2225.  
  2226. int main()
  2227. {    int size, *ptr;
  2228.     
  2229.     void handler();
  2230.     char *MALLOC();
  2231.     
  2232.     /* ensure your favorite program catches sigdanger */
  2233.     signal(SIGDANGER,handler);
  2234.     
  2235.     /*************************************************************
  2236.      your favorite memory hogging program which uses MALLOC to
  2237.      allocate storage (not malloc)
  2238.     *************************************************************/
  2239.     size = ????;
  2240.  
  2241.     ptr = MALLOC(size);
  2242.     ....
  2243.     ....
  2244.  
  2245. }
  2246.  
  2247. void handler()
  2248. {
  2249.     /* sigdanger is sent when the number of paging slots drops
  2250.     below the pswarn threshold (see /etc/master to tailor this).
  2251.     Setting this threshold to a higher level may help
  2252.     even if you don't use the rest of this solution. */
  2253.  
  2254.     dangerflag = 1;
  2255. }
  2256.  
  2257. /* MAXMEMSIZE is chosen to be the largest real memory configuration
  2258.    supported on the RT */
  2259.  
  2260. #define MAXMEMSIZE    0x1000000
  2261.  
  2262. /* MALLOC is used to overcome the possibility of overcommitting the
  2263.    page space */
  2264.  
  2265. char *MALLOC(size)
  2266. unsigned int size;
  2267.  
  2268. {
  2269.     char    *malloc();
  2270.     char    *p,*q;
  2271.     int    i;
  2272.     volatile int    *numps; /* number of paging slots from low memory */
  2273.  
  2274.     /* Make sure dangerflag is initialized */
  2275.     dangerflag = 0;
  2276.  
  2277.     /* point to number of paging slots in AIX low memory */
  2278.     numps = (int *)0xb8;
  2279.  
  2280.     /* ensure there is enough backing storage to back all of
  2281.        memory (note MAXMEMSIZE is as good as I can get here: that
  2282.        is, a lessor value wouldn't work on machines with less
  2283.        memory */
  2284.     if ((*numps * PAGESIZE) < (size + MAXMEMSIZE)) return((char*)NULL);
  2285.  
  2286.  
  2287.     /* call the real malloc to get the storage */
  2288.     q = p = malloc(size);
  2289.     if (p == (char *)NULL) return(p);
  2290.  
  2291.     for(i = 0; i < size ; i += PAGESIZE)
  2292.     {
  2293.         /* touch and dirty the next page */
  2294.         *q = 0;
  2295.  
  2296.         /* Get out if we went below the pswarn threshold */
  2297.         if (dangerflag) goto getout;
  2298.  
  2299.         /* bump to the next page (note: must be careful to 
  2300.            touch on the next page boundary and not in the
  2301.            middle of the page */
  2302.         q = (char *)(((int)q & (~(PAGESIZE-1))) + PAGESIZE); 
  2303.     }
  2304.  
  2305.     /* ensure there is still enough backing storage */
  2306.     if ((*numps * PAGESIZE) < (size + MAXMEMSIZE)) goto getout;
  2307.     return(p);
  2308.  
  2309.  
  2310.     getout: /* There isn't enough space available */
  2311.     free(p);
  2312.     return((char *)NULL);
  2313. }
  2314.  
  2315. /* ------------------------- cut here -----------------------------*/
  2316.  
  2317.    Disclaimer:  The above program is already in the public domain and is posted
  2318.    here without warranty (even though I know it works).
  2319.    James Moody    Adv Workstations Div ; IBM Austin, 2502      
  2320.         aesnet: moody@moody.austin.ibm.com
  2321.         vnet: MOODY at AUSVM6
  2322.    outside ->    ..!cs.utexas.edu!ibmchs!auschs!moody.austin.ibm.com!moody
  2323.    ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==
  2324.  
  2325. ------------------------------
  2326. S.27 - ADDU setup and useage. 
  2327.  
  2328.      To use ADDU on PC/DOS systems, the RT needs the DOS Server program
  2329.      (pci) lpp installed, and started from the /etc/rc.include startup script.
  2330.  
  2331.      [ I was requested to add this entry, but I have absolutely no 
  2332.        experience with this product.  Open for some kind soul to fill
  2333.        it in with knowledge.  - MW ]
  2334.  
  2335. ------------------------------
  2336. S.28 - How to set up print queues on AIX V2 and general printing 
  2337.        setup and control notes.
  2338.        How to increase the number of printers over eight.
  2339.  
  2340.     * The devices command will add the physical printer device to the 
  2341.       system, and under normal conditions, it will configure the queueing
  2342.       system to use the newly added printer. 
  2343.  
  2344.        The following printers represent those currently supported
  2345.        by AIX 2.2.1:
  2346.        
  2347.        5152  - IBM PC Graphics Printer
  2348.        5182  - IBM PC Colour Printer
  2349.        3852  - IBM PC Colour Jetprinter
  2350.        5201  - IBM PC Quietwriter Printer Model 1
  2351.              - IBM PC Quietwriter Printer Model 2
  2352.        5202  - IBM PC Quietwriter Printer III
  2353.        4201  - IBM Proprinter II & III (Serial or Parallel)
  2354.        4202  - IBM Proprinter II & III XL (Serial or Parallel)
  2355.        4224  - IBM 4224 Printer (Serial)
  2356.        4216  - IBM Personal Pageprinter Model 20 (Postscript)
  2357.        opp   - Other Parallel Printer - for non-IBM Printers
  2358.        osp   - Other Serial Printer - for non-IBM Printers
  2359.        3812  - IBM Pageprinter
  2360.        
  2361.        The following printers can also be configured for use on the 6150:
  2362.        
  2363.        5204  - IBM Quickwriter (4201 serial and 5202 parallel)
  2364.        4216  - IBM Personal Pageprinter Model 010 (4201 serial and parallel)
  2365.        
  2366.        The opp and osp devices can run quite a few non-IBM printers very
  2367.        easily with the proper setup of both the printer and AIX V2.
  2368.  
  2369.     * NOTE: If devices is used to CHANGE a printer configuration
  2370.       information then it is necessary to recreate the device driver by
  2371.       issuing the following commands:
  2372.  
  2373.           vrmconfig -d lpX
  2374.           vrmconfig -a lpX
  2375.  
  2376.           Where lpX is the name of the relevant device.
  2377.  
  2378.     * The printing and queue control commands used are rather unique to
  2379.       AIX/RT. The following commands show BSD commands and their AIX/RT
  2380.       equivlent.
  2381.  
  2382.          BSD           AIX/RT
  2383.          lpq           print -q         Displays the status of the printers and
  2384.                                         printer queues.
  2385.          lprm xx       print -ca xx     Cancels a print request for the file
  2386.                                         'xx'.
  2387.          lpr -Plp1 xx  print lp1 xx     Specifies that file 'xx' should be
  2388.                                         printed on the printer lp1 rather than
  2389.                                         the default printer.
  2390.  
  2391.     * In BSD the 'lpc' command is an interactive command used to alter the
  2392.       printing system.  In AIX/RT this is replaced by several different
  2393.       command flags.  Only the root account or members of the system group
  2394.       can use these flags.
  2395.          print -dd lp1       Takes the print queue lp1 down. All devices on
  2396.                              this queue are shown as OFF by print -q.
  2397.          print -du lp1       As above but turns the queue back on.
  2398.          print -dg filename  Kills the qdaemon after the file is printed.
  2399.                              This is the only clean way of killing the qdaemon.
  2400.  
  2401.     * The following are some handy print command examples:
  2402.          
  2403.       print -nc=3 filename     Prints 3 copies of a file
  2404.       print -no filename       Notifies you that the file has finished printing.
  2405.       print -tl=TITLE filename Prints TITLE on the first page of the document.
  2406.                                Also shown from the print -q command.
  2407.       print -cp filename       Copies the file to the /usr/spool/qdamon space,
  2408.                                instead of using the actual file for printing.
  2409.                                You can edit it while waiting for the current
  2410.                                copy to print.
  2411.       print -su=user1 -ca job1 This command allows a user to remove another
  2412.                                users print job from the queue. Only system
  2413.                                group members can use this flag.
  2414.       print -pr=nn filename    Causes the print job to take the priority 
  2415.                                specified by the 'nn' parameter when queued.
  2416.                                System group users can use priorities 1-30 and
  2417.                                other users can use 1-20.
  2418.       print -ap=nn filename    Alters the priority of a queued print job to
  2419.                                'nn'.  This allows jobs to be moved up and down
  2420.                                the queue as seen by the 'print -q' command.
  2421.  
  2422.     * Another very useful feature of the "print" command is that it can be
  2423.       used to provide parameters to the stanard backend 'piobe'. For example,
  2424.       when adding a Quietwriter III in devices there are many parameters that
  2425.       can be changed.  Among the various parameters are "lm", "pq" and "psd"
  2426.       for setting Left Margin, Print Quality and Paper Source Drawer.
  2427.  
  2428.       Rather than setting these in devices and changing them each time they
  2429.       need altering, it is possible to enter print commands in the following
  2430.       way:
  2431.  
  2432.           $ print -lm=3 -pw=letter -psd=2 filename
  2433.  
  2434.       This has the effect of dynamically changing the margin, print quality
  2435.       and paper source drawer for the period of this print job only. The
  2436.       printer reverts to the previous settings immediately after the job
  2437.       has completed.
  2438.  
  2439.     * There are two special flags for the printing system that can be
  2440.       very helpful:
  2441.           -plot     This flag allows files to pass through the backend
  2442.                     without change.  Embedded control codes will not be
  2443.                     altered by the backend.
  2444.           -strip    Removes all control codes in the text before passing it
  2445.                     through to the printer.
  2446.  
  2447.       It is possible to pass 'piobe' these parameters in two ways.
  2448.       For permanent changes, they can be put into the /etc/qconfig file
  2449.       in the device stanza as normal parameters to 'piobe'.
  2450.  
  2451.       Alternatively they can be passed with the print command.
  2452.  
  2453.           $ print -plot lp1 file.with.codes
  2454.  
  2455.       This will print the file 'file.with.codes' on the printer associated
  2456.       with the lp1 queue but with the -plot option.
  2457.  
  2458.     * The /etc/qconfig fle can be edited to alter print queue and device
  2459.       characteristics. Although the 'print' command will act on the changes
  2460.       without further action, it is necessary to reload the qdaemon with the
  2461.       modified /etc/qconfig information.
  2462.  
  2463.       This is achieved by issuing the 'print -rr' command which forces the
  2464.       qdaemon to reread the information.
  2465.  
  2466.     * Some stanzas in this file describe queues and other stanzas describe
  2467.       devices. Every queue stanza requires that one or more device stanzas
  2468.       immediately follow it in the file. The first queue stanza describes
  2469.       the default queue. The print command uses this queue if no queue
  2470.       parameter is provided.
  2471.  
  2472.     * The /etc/qconfig file with one printer defined will look something
  2473.       like this:
  2474.  
  2475.             lp0:
  2476.                 argname = lp0
  2477.                 device = dlp0
  2478.      
  2479.             dlp0:
  2480.                 file = /dev/lp0
  2481.                 access = both 
  2482.                 backend = /usr/lpd/piobe -statusfile -pname=lp1
  2483.                               -device=d4201ss2 -profile=/etc/ddi/sprinter 
  2484.      
  2485.             bsh:
  2486.                 argname = bsh
  2487.                 friend = FALSE
  2488.                 discipline = fcfs
  2489.                 device = bshdev
  2490.      
  2491.             bshdev:
  2492.                 backend = /bin/sh
  2493.  
  2494.         The first stanza (labelled lp0:) describes the argument name for this
  2495.         print queue and the device name. The label lp0: is the name of the
  2496.         queue and the argname (also lp0 in this case) is the name used by the
  2497.         'print' command to select this queue. The label and the argname
  2498.         need not be the same.
  2499.         Note: Queue names MUST be a maximum of three characters (lp0 in
  2500.             the example above).  The 'device' entry stanza (dlp0 in the
  2501.             example) has a maximum length of six characters.
  2502.  
  2503.     * A single queue can be used to service more than one device for a
  2504.       particular queue. For example, if there are two identical printers
  2505.       attached to the system then it may be desirable to have them both on
  2506.       the same queue. This would enable users to send jobs to be printed and
  2507.       if one printer was busy then the job could be printed on the alternate
  2508.       printer.
  2509.  
  2510.       This can be achieved as follows:
  2511.  
  2512.          - Add both printers with devices. The assume the first one is lp0,
  2513.            and the second is lp1. 
  2514.          - Edit /etc/qconfig and delete the lp1 'queue' stanza and edit the
  2515.            lp0 queue stanza to select both devices:
  2516.            Locate the line:
  2517.                 device = dlp0
  2518.            associated with the lp0 queue and change it so that both device
  2519.            stanzas are referenced by that queue entry.
  2520.  
  2521.             lp0:
  2522.                 argname = lp0
  2523.                 device = dlp0,dlp1
  2524.      
  2525.             dlp0:
  2526.                 file = /dev/lp0
  2527.                 access = both 
  2528.                 backend = /usr/lpd/piobe -statusfile -pname=lp1
  2529.                               -device=d4201ss2 -profile=/etc/ddi/sprinter 
  2530.      
  2531.             dlp1:
  2532.                 file = /dev/lp1
  2533.                 backend = /usr/lpd/piobe -statusfile -pname=lp1
  2534.                               -device=d4201ss2 -profile=/etc/ddi/sprinter
  2535.  
  2536.       If it is necessary to access either of the devices individually, this
  2537.       can still be achieved using the following format:
  2538.            print filename lp0:0      (Selects dlp0)
  2539.            print filename lp0:1      (Selects dlp1)
  2540.  
  2541.     * In the default /etc/qconfig file there are two stanzas, bsh and bshdev.
  2542.       These form the queue characteristics for the background shell. The
  2543.       background shell isn't actually used for printing, but may be used
  2544.       for queuing jobs to be executed on the system. For example, to run
  2545.       a program called PROG, that can only be executed by one user at a
  2546.       time (eg for load implications), you would enter:
  2547.  
  2548.           print bsh PROG
  2549.  
  2550.       These stanzas can be removed if not needed, to prevent
  2551.       'print -q' from displaying bsh information, or inadvertant use.
  2552.  
  2553.     * Working with more than 8 printers
  2554.  
  2555.       The AIX 2.2 device driver supports up to 16 printers. There are some
  2556.       manual steps that need to be taken to get other portions of the system
  2557.       to also work with more than 8 printers.
  2558.  
  2559.       For "devices" support: we need to change the /etc/master file.
  2560.       For every stanza related to a printer device (those which have the
  2561.       keyword "prefix = lp"), change the value of the "maxminor" keyword
  2562.       from 8 to 16.  To cause this change to go into effect, a kernel 
  2563.       rebuild is neessary.
  2564.  
  2565.       For "qdaemon" support: when these printers actually get added, a
  2566.       stanza for the printer is added to the /etc/qconfig file. The qdaemon
  2567.       only supports 3-character queue names. So when the 10th printer gets
  2568.       added, modify the created stanza names, with an editor.
  2569.       The "argname" and "device" keywords, and the "-pname" flag as follows:
  2570.  
  2571.           Typical example:
  2572.           ---------------
  2573.           lp10:
  2574.                argname = lp10
  2575.                device = dlp10
  2576.           
  2577.           dlp10:
  2578.                file = /dev/lp10
  2579.                backend = /usr/lpd/piobe -pname=lp10 -device=d5152mp
  2580.           
  2581.           Is changed to become:
  2582.           --------------------
  2583.           lpa:
  2584.                argname = lpa
  2585.                device = dlpa
  2586.           
  2587.           dlpa:
  2588.                file = /dev/lp10
  2589.                backend = /usr/lpd/piobe -pname=lpa -device=d5152mp
  2590.  
  2591.       The reason for this alteration is that the printer device driver supports
  2592.       16 printers, but the qdaemon, who reads the qconfig file, only supports
  2593.       queue names of 3 bytes or less. Because the lp10 - lp15 are 4 byte queue
  2594.       names they need to be amended to 3 bytes. Note "/dev/lp10" is the device
  2595.       special file name and does not need to be changed.
  2596.  
  2597.     * There are a number of fields that may be included in the print queue
  2598.       stanza (lp0: in the example below) and the device stanza (dlp0).
  2599.  
  2600.        lp0:
  2601.            argname = lp0
  2602.            device = dlp0
  2603.            acctfile = /usr/adm/qacct (or any other filename)
  2604.            discipline = fcfs         (or sjn)
  2605.            friend = TRUE             (or FALSE)
  2606.            up = TRUE                 (or FALSE)
  2607.  
  2608.        dlp0:
  2609.            file = /dev/lp0
  2610.            backend = /usr/lpd/piobe -statusfile -pname=lp1 \
  2611.                           -device=d4201ss1 -profile=/etc/ddi/sprinter
  2612.            access = write            (or both, or FALSE)
  2613.            align = TRUE              (or FALSE)
  2614.            feed = 3                  (or never)
  2615.            header = always           (or never, or group)
  2616.            trailer = always          (or never, or group)
  2617.  
  2618.       The fields shown above can be used to customise the output and
  2619.       queue characteristics of each printer. It is important to note
  2620.       that some are entered in the print queue stanza and some are entered
  2621.       in the device stanza. If any field is placed in the wrong stanza then
  2622.       an error message will occur in the form of:
  2623.  
  2624.            error in config file /etc/qconfig, line 6
  2625.            illegal field name for queue stanza
  2626.            PRINT (FATAL ERROR): error from digester /usr/lpd/digest
  2627.            Please notify system administrator.
  2628.  
  2629.       This error will also occur if there is no blank line between stanzas.
  2630.  
  2631.       > Fields in the print queue stanza (lp0):
  2632.         argname     Identifies the queue name identifier used by the 'print'
  2633.                     command. This can be changed to a more meaningful name
  2634.                     such as 'argname = draft'
  2635.         device      Identifies the the symbolic name that refers to the
  2636.                     following device stanza(s).
  2637.         acctfile    Identifies the file used to save print accounting
  2638.                     information. If the named file does not exist, no
  2639.                     accounting is done. FALSE, the default, indicates
  2640.                     suppressed accounting.  The information provided is
  2641.                     user number, user name and number of pages printed.
  2642.         discipline  Defines the scheduling algorithm used by the queue.
  2643.                     The default 'fcfs' means 'first come, first served'.
  2644.                     The other option, 'sjn', specifies shortest job next.
  2645.         friend      Indicates whether the backend updates the status file
  2646.                     and responds to terminate signals. TRUE is the default,
  2647.                     FALSE indicates that it does not. A friendly backend
  2648.                     (like 'piobe') will provide status information as seen
  2649.                     by 'print -q' whereas an unfriendly one (like 'cat')
  2650.                     does not.
  2651.         up          Defines the state of the queue. TRUE, the default
  2652.                     indicates that it is running, FALSE indicates that it is
  2653.                     not. This is used when a printer becomes unavailable for
  2654.                     a period of time (eg maintenance) and it is not relevant
  2655.                     to delete the device from the system.
  2656.  
  2657.       > Fields in the device stanza (dlp0:)
  2658.         access      Defines the type of access the 'backend' has to the
  2659.                     file specified in the 'file' field. The value of access
  2660.                     is 'write'  if the backend has write access to the file
  2661.                     or 'both' if it has read/write access. If the value of
  2662.                     access is FALSE this field is ignored.
  2663.         align       Specifies whether the backend sends a form feed before
  2664.                     starting the job if the printer was idle. (Default - FALSE)
  2665.         feed        Specifies the number of separator pages to print if the
  2666.                     device becomes idle. The default, 'never', indicates that
  2667.                     no separator pages should be printed.
  2668.         header      Specifies whether a header page prints before each job.
  2669.                     The default, 'never', indicates no header pages at all,
  2670.                     'always' means print a header page before each job and
  2671.                     'group' means before each group of jobs for the same user.
  2672.         trailer     Operats the same as 'header' but puts trailer pages after
  2673.                     the users output rather than than preceding it.
  2674.  
  2675.     * Using Flow Control with serial printers.
  2676.       AIX/RT can communicate serially with printers at up to 19200 baud.  If
  2677.       a large file is being printed then the printer buffer will often fill
  2678.       up because the printer cannot print as fast as the system is transmitting.
  2679.       To prevent the subsequent loss of characters some form of flow control
  2680.       must be implemented.
  2681.  
  2682.     There are two main types of flow control used with serial printers. One,
  2683.     "dtr" uses hardware and the other, "Xon/Xoff" uses software.
  2684.  
  2685.       + dtr Flow Control
  2686.         The dtr (Data Terminal Ready) flow control method uses one of the pins          in the RS232C wire to indicate to the RT that the printer buffer is
  2687.         full and that no more data is to be sent. It uses the same pin to
  2688.         indicate that the buffer is no longer full and that more data can be
  2689.         sent to the printer.
  2690.  
  2691.         If you examing the printer cable diagram show in section H.xx of the
  2692.         harware FAQ, for a printer cable, you will see that Pin 20 on the
  2693.         printer end of the cable is the "dtr" pin per RS-232 standards. This
  2694.         pin is connected to Pin 8 on the RT end, Clear To Send (CTS).
  2695.  
  2696.         If your printer uses dtr then you must specify pro=dc in the devices
  2697.         program when you add the printer. Also, ixp (Include Xon/Xoff Protocol)
  2698.         MUST be set to false in devices since this ignores the 'pro' setting
  2699.         if ixp is set to TRUE.  This tells the RT to look at the CTS pin which
  2700.         is connected to 'dtr' on the printer for dtr flow control (NOT the
  2701.         "dtr" pin of the RT side).
  2702.         
  2703.         A common mistake is to set "pro=dtr" in devices when the printer is
  2704.         using dtr. This, however tells the RT to look at the dtr pin (Pin 2)
  2705.         which is connected to CD and DSR using the standard printer cable.
  2706.         Since CD and DSR will always be high, the RT never has reason to
  2707.         believe that the buffer is full and lost data and error messages occur.
  2708.  
  2709.       + XON/XOFF Flow Control
  2710.         Xon/Xoff is more straight forward than dtr. It uses the Receive and
  2711.         Transmit lines and a couple of special characters to indicate the
  2712.         status of the buffers. When data is being sent down the transmit line
  2713.         from the RT and the buffer fills, the printer sends a special code
  2714.         down its transmit line, which the RT receives and interprets as Xoff.
  2715.         The RT then waits until the printer sends an Xon character before it
  2716.         sends more data to the printer.  The normal values for Xon and Xoff
  2717.         are 11 and 13 (HEX) respectively.
  2718.  
  2719.         To set up a printer to use Xon/Xoff it is necessary to set "ixp" to
  2720.         true in devices. As mentioned this ignores the "pro" parameter.
  2721.  
  2722.     * In AIX the "splp" command is used for changing the device driver
  2723.       characteristics of both parallel and serial printers. Basically, each
  2724.       printer is set up using the "devices" command which edits all the
  2725.       relevant "/etc/ddi/xxxx" files and configures the device driver.
  2726.  
  2727.       If the print command is used to output files then splp will not
  2728.       be necessary. However, for redirection of files to the device, it
  2729.       may be necessary to alter the device driver settings (eg +plot to
  2730.       pass a file through without altering it in any way).
  2731.  
  2732.       The "splp" command can be used by superuser or any user in the system
  2733.       group to alter the characteristics of a printer device driver
  2734.       interactively. It can also be used to display the current
  2735.       characteristics of a serial or parallel printer device driver.
  2736.  
  2737.       Note: When the "print" command is used with the piobe backend, splp is
  2738.       set to +plot during the printing. Therefore any splp parameters set by
  2739.       the user are ignored.
  2740.  
  2741.       If a file is redirected (e.g. cat filename >/dev/lp0) then the splp
  2742.       settings are active.
  2743.  
  2744.       To display the device driver characteristics of the lp1 printer
  2745.       issue the "splp /dev/lp1" command:
  2746.  
  2747.            # splp /dev/lp1
  2748.  
  2749.              indent = 0, width = 80, length = 66, timer = 60 seconds
  2750.              +bs  +cr  +ff  +nl  +tb  -cap  -wrap  -plot 
  2751.              -sync  -err  -fontinit
  2752.              serial printer: -parenb  -parodd  -cstopb  exta  cs8
  2753.  
  2754.       Parameters can be changed with the splp command in the following form:
  2755.  
  2756.           splp /dev/lp1 width=132
  2757.  
  2758.       Note: splp will not work for serial printers unless CD is high on the
  2759.       printer port. Therefore the printer must be on-line before the
  2760.       "splp" command is issued. When using splp from the "/etc/rc.include".
  2761.       file so it is important to bear this in mind.
  2762.  
  2763.       NOTE: To include parameters such as "plot" in the "splp" command you
  2764.       must use "+plot" to turn the parameter on and "-plot" to turn the
  2765.       parameter off.  This is different to the "piobe" command where the
  2766.       "-" indicates that the parameter is included.
  2767.  
  2768.     * If the '-cp' flag is used with the print command or if output is piped
  2769.       to print, temporary storage of the file to be printed is kept
  2770.       in /usr/spool/qdaemon.  For this reason, it is essential that the 
  2771.       '/usr' minidisk is large enough to hold the files that are going to
  2772.       be printed.  Remote print requests via the lpd daemon are also
  2773.       received in /usr/spool/lpd until queued, then they are stored in
  2774.       /usr/spool/qdaemon.
  2775.  
  2776.     * More documentation on the printing subsystems can be found in:
  2777.         Using the AIX Operating System
  2778.            Chapter 2 - Printing Files
  2779.               The print command is described with it's flags and their
  2780.               meanings and examples are given.
  2781.  
  2782.         Managing the AIX Operating System
  2783.            Chapter 3 - Using the Queuing System
  2784.                This section deals with parts of the queuing system; print,
  2785.                qdaemon, backend and qconfig. It covers these in some depth.
  2786.  
  2787.            Chapter 4 - Managing Printers
  2788.                This short section discusses piobe and the ways in which print
  2789.                can be controlled by the user.
  2790.  
  2791. ------------------------------
  2792. S.29 - Accessing remote printers via TCP/IP.
  2793.        Sharing your printers with other systems (lpd daemon).
  2794.  
  2795.        To use remote printers on another system will require you to
  2796.        have the TCP/IP component insalled and configured, and to manually edit
  2797.        the /etc/qconfig file for the remote printers.
  2798.  
  2799.     Notes:
  2800.       1) Queue stanza names MUST be a maximum of three characters.
  2801.       2) Device stanza names must be a maximum of six characters.
  2802.       3) Queues names are shared among systems, not device entries.
  2803.       4) More than one queue can point to a single device.
  2804.  
  2805.        To utilize a printer on system 'george' that has a queue name
  2806.        of 'lp0' requires the following entries in the qconfig file.
  2807.        The printer on this system 'sam' will be called 'rp0'.
  2808.  
  2809.     rp0: argname=rp0
  2810.              device=drp0
  2811.  
  2812.     drp0: friend = TRUE
  2813.           backend = /usr/lpp/tcpip/etc/lprbe -pserver=george -pqueue=lp0 
  2814.           
  2815.     If the remote system is NOT a AIX system, add '-naix' to the
  2816.         command line arguments for the lprbe backend statement.
  2817.  
  2818.     The lprbe backend also supports user filters with the 
  2819.        -filter=  line flag.  For more information on this, and the
  2820.         available filters, see the "Interface program for TCP/IP" manual.
  2821.  
  2822.       * To be allow other systems to utilitze your printers for remote
  2823.         printing is a three step process.
  2824.          
  2825.         1) Make sure the remote system IP address and name are known.
  2826.            If you are not using domain name service or NIS(YP), make sure
  2827.            that the remote hostname and IP address are listed in /etc/hosts.
  2828.  
  2829.         2) Insure that the 'lpd' daemon is started.  To have it started at
  2830.            boot time, edit /etc/rc.tcpip and uncomment the three lines
  2831.            after 'Start up Print Daemon':
  2832.  
  2833.              # Start up Print Daemon
  2834.              #if [ -f /usr/lpp/tcpip/etc/lpd ]; then
  2835.              #   /usr/lpp/tcpip/etc/lpd & echo " lpd\c"  >/dev/console
  2836.              #fi
  2837.  
  2838.            Note: The LOCAL printing daemon 'qdaemon' MUST also be started
  2839.            to use remote printing.  The 'lpd' daemon just hands off received
  2840.            remote printing requests and files and queues them in the local
  2841.            queues controlled by the qdaemon.
  2842.  
  2843.         3) Systems allowed to print on your printers MUST be listed in
  2844.            the access file read by the 'lpd' daemon.  This file is
  2845.            '/etc/hosts.lpd'.  It is a simple ascii file with one line 
  2846.            for each hostname that will be using your print queues.
  2847.  
  2848.            Note: If you change this file with 'lpd' running, send a 
  2849.            'kill -2 <pid of lpd>' to cause the daemon to re-read the 
  2850.            /etc/hosts.lpd file for new authorized hostnames.  If using
  2851.            domain name service AND the remote system is NOT in your domain
  2852.            the full domain name of the system MUST be entered.
  2853.  
  2854.       * If using remote printing make sure that TCP/IP updates
  2855.         are installed:
  2856.          - IX03872 located on update 1733 or later, security problems
  2857.            with the lpd daemon.
  2858.          - IX06162 located on update 1734 or later, lpd not cleaning
  2859.            up /usr/spool/lpd temporary files.
  2860.       
  2861. ------------------------------
  2862. S.30 - Using 9332 (SCSI) disk drives with AIX.
  2863.  
  2864.      Coming soon... ??????
  2865.  
  2866. ------------------------------
  2867. S.31 - Making a backup of the VRM minidisk.
  2868.  
  2869.      To take a backup of your installed VRM, use the command:
  2870.  
  2871.           cvid /dev/fd0
  2872.  
  2873.      This command will backup your current VRM and create a TAILORED 
  2874.      VRM install diskette, which you can use to re-install your VRM.
  2875.      This is especially helpful for those who have altered the standard
  2876.      VRM install with their own drivers or re-ordered the lpost file order.
  2877.  
  2878.      You must have superuser authority and already initialized diskettes!
  2879.  
  2880. ================================================================================
  2881.  
  2882. Posted around the first of each month to comp.sys.ibm.pc.rt, and
  2883. to comp.unix.aix.
  2884.  
  2885. This FAQ is dedicated to use of the AIX Version 2 operating system, running
  2886. on the IBM RISC processor known as the RT.  The RT is known also as 
  2887. an IBM model 6150 or 6151 machine.
  2888.  
  2889. For AIX RT  submissions E-mail to:   aix-rt@antimatr.hou.tx.us
  2890. For AOS RT  submissions E-mail to:   aos-rt@antimatr.hou.tx.us
  2891. For MACH RT submissions E-mail to:   mach-rt@antimatr.hou.tx.us
  2892. For general Q&A submissions (hardware and other stuff) E-mail to:
  2893.    faq-rt@antimatr.hou.tx.us
  2894.  
  2895. Other comments and correctons should be sent to the author:
  2896.     Mark Whetzel
  2897.     DOMAIN addr: markw@antimatr.hou.tx.us
  2898.     BANG address:  ..!uhnix1!lobster!antimatr!markw
  2899.     Daytime work number  8AM-5PM M-F CST  VOICE: (713) 963-2544
  2900.  
  2901.                    *** FAQ Continued in part 3 ***
  2902. ===================== end of ibm-rt-faq/aix-v2/part2 ===========================
  2903. -- 
  2904. AIX..... NOT just another UNIX. (tm)
  2905. Mark Whetzel                          | My own RT system.. My own thoughts..
  2906. DOMAIN: markw@antimatr.hou.tx.us      | IBM RT/135 running AIX 2.2.1 
  2907. UUCP ..!menudo!lobster!antimatr!markw | comp.sys.ibm.pc.rt FAQ maintainer.
  2908.